[perl #51880] [PATCH] Remove trailing whitespace in languages/tcl/runtime/conversions.pir

2008-03-19 Thread via RT
# New Ticket Created by  Matt Kraai 
# Please include the string:  [perl #51880]
# in the subject line of all future correspondence about this issue. 
# URL: http://rt.perl.org/rt3/Ticket/Display.html?id=51880 


Howdy,

t/codingstd/trailing_space.t fails because
languages/tcl/runtime/conversions.pir contains trailing whitespace.
The attached patch removes it.

-- 
Matt
diff --git a/languages/tcl/runtime/conversions.pir b/languages/tcl/runtime/conversions.pir
index 7d7b0ea..82c91b8 100644
--- a/languages/tcl/runtime/conversions.pir
+++ b/languages/tcl/runtime/conversions.pir
@@ -366,7 +366,7 @@ Given an expression, return a subroutine, or optionally, the raw PIR
 tcl_error $S0
 
   empty:
-tcl_error empty expression\nin expression \\ 
+tcl_error empty expression\nin expression \\
 .end
 
 =head2 _Tcl::__script


[perl #51878] [PATCH] Change c_cuddled_else.t to cuddled_else.t in lib/Parrot/Harness/DefaultTests.pm

2008-03-19 Thread via RT
# New Ticket Created by  Matt Kraai 
# Please include the string:  [perl #51878]
# in the subject line of all future correspondence about this issue. 
# URL: http://rt.perl.org/rt3/Ticket/Display.html?id=51878 


Howdy,

t/codingstd/c_cuddled_else.t was renamed to
t/codingstd/cuddled_else.t, but the entry for the former wasn't
changed to the latter in lib/Parrot/Harness/DefaultTests.pm.  The
attached patch does so.

-- 
Matt
diff --git a/lib/Parrot/Harness/DefaultTests.pm b/lib/Parrot/Harness/DefaultTests.pm
index de80c26..5b1ddd4 100644
--- a/lib/Parrot/Harness/DefaultTests.pm
+++ b/lib/Parrot/Harness/DefaultTests.pm
@@ -65,7 +65,6 @@ our @developing_tests = (
 map { t/codingstd/$_ } qw(
 c_code_coda.t
 c_cppcomments.t
-c_cuddled_else.t
 c_header_guards.t
 c_indent.t
 c_operator.t
@@ -75,6 +74,7 @@ our @developing_tests = (
 check_isxxx.t
 check_toxxx.t
 copyright.t
+cuddled_else.t
 filenames.t
 gmt_utc.t
 linelength.t


[perl #51880] [PATCH] Remove trailing whitespace in languages/tcl/runtime/conversions.pir

2008-03-19 Thread Will Coleda via RT
On Tue Mar 18 22:34:56 2008, kraai wrote:
 Howdy,
 
 t/codingstd/trailing_space.t fails because
 languages/tcl/runtime/conversions.pir contains trailing whitespace.
 The attached patch removes it.
 

Thanks, applied in r26492.


[perl #51894] [PATCH] aligning code and localization of vars

2008-03-19 Thread via RT
# New Ticket Created by  Klaas-Jan Stol 
# Please include the string:  [perl #51894]
# in the subject line of all future correspondence about this issue. 
# URL: http://rt.perl.org/rt3/Ticket/Display.html?id=51894 


hi,

attached a patch that does some aligning of = tokens and limits the
scope of some variables.

I don't commit this myself, because I want to check whether this
practice of localizing vars. is ok, as it introduces else clauses.
For instance, instead of writing:

STRING *s;

if ( bla bla )
 return -1;

s = xyz
more stuff()
return s


I changed this into:

if (bla bla)
 return -1;
else {
   STRING *s = xyz
   more stuff()
   return s;
}



Not sure whether which is better. My personal preference is the patch,
obviously.
Comments welcome, so I know how to do this in the future.

thanks,
kjs


io.patch
Description: Binary data


Re: [perl #47828] [TODO] Implement the 'copy' opcode

2008-03-19 Thread Patrick R. Michaud
On Mon, Mar 17, 2008 at 10:26:21AM -0700, Will Coleda via RT wrote:
 compilers/pct/src/PAST/Compiler.pir says:
 
 On Thu Dec 13 17:47:05 2007, [EMAIL PROTECTED] wrote:
  Implement a 'copy' assignment (at least until we get the 'copy'
  opcode -- see RT#47828).
 
 Now that the copy op is implemented, this should be implementable.

I tried implementing this a couple of weeks ago (pre-pdd17 merge)
and ran into a couple of problems.  I decided to hold off on it
until after the pdd17 merge and simply haven't had a chance to try
it again.

Pm


Re: [perl #51850] PGE buglet

2008-03-19 Thread Patrick R. Michaud
On Tue, Mar 18, 2008 at 08:21:09AM -0700, Stephane Payrard wrote:
 
 A  ?before rule with a space between the '' and the '?' compiles
 but fails at execution
 with the unhelpful message :
 Unable to find regex  ''
 Null PMC access in invoke()

I agree that this is not a useful error message.  However, when
PGE is corrected to follow the specification the regex

   ?before foo

would be identical to

  '?before' | 'foo'

and no error message would be generated at all.  

(PGE hasn't been updated to recognize the  a b c  form of
alternation.)

Pm


Re: Parrot 0.6.0 PP is released.

2008-03-19 Thread François Perrad

Bernhard Schmalhofer wrote:


On behalf of the Parrot team, I'm proud to announce Parrot 0.6.0
PP.
Parrot (http://parrotcode.org/) is a virtual machine aimed
at running dynamic languages.
This release is a milestone release featuring the
revamping of Parrot Magic Cookies.



The Windows setup is available on http://parrotwin32.sourceforge.net/

François.


Parrot 0.6.0 can be obtained via CPAN (soon), or follow the
download instructions at http://parrotcode.org/source.html.
For those who would like to develop on Parrot, or help develop
Parrot itself, we recommend using Subversion or SVK on the
source code repository to get the latest and best Parrot code.

Parrot 0.6.0 News:
- Specification
 + launched pdd18_security.pod
 + updated pdd17_pmc.pod
 + launching draft of pdd28_character_sets.pod
- Documentation
 + cleanup of IMCC documentation
- Configuration
 + add step auto::gettext
 + add step auto::crypto
- Compilers
 + PCT:
   . Fix '-e' option
   . Phase out P6Regex in favor of Perl6Regex
 + IMCC:
   '.local Array my_arr' is illegal now
- Languages
 + C99: reimplementation with PCT
 + lolcode:
   . various updates
   . add support for functions with params
   . add math functions
 + Rakudo:
   . support for 'say'
   . first cut at smart matching
   . indirect method calls
   . support for Pairs
   . added methods 'grep' and 'first'
   . implement auto{increment,decrement}
   . initial implementation of 'perl6doc'
 + Lua:
   . various updates
   . add base64 library
 + Cardinal: basic support for functions with parameters
 + Pheme: various updates
 + Ecmascript: various updates
 + Tcl: now targeting tcl 8.5.1, no more expected failures in test suite.
   (No, this doesn't mean everything's implemented. =-)
 + Eclectus: various updates
 + WMLScript: various updates
- Implementation
 + PDD17 (PMCs)
 + Add library YAML::Dumper
 + Add the MD2, MD4, MD5, RIPEMD160, SHA  SHA1 PMC, as a wrapper
around libcrypto
- Miscellaneous
 + various bugfixes, code cleanups and coding standard fixes
 + consting
 + remove external Perl 5 modules from the Parrot distribution


Thanks to all our contributors for making this possible, and our
sponsors for supporting this project.

Enjoy!
 Bernhard Schmalhofer








[ANN] Lua on Parrot 0.6.0

2008-03-19 Thread François Perrad


Parrot is a VM (virtual machine) designed specifically for running 
dynamic languages in general, and Perl 6 in particular (see 
http://www.parrotcode.org/).

Parrot is still in development, the latest monthly version is 0.6.0.

A complete prototype of Lua 5.1 (aligned on 5.1.3) is available :
 - an Lua interpreter written in PIR (Parrot Intermediate 
Representation) that generates PIR

 - a large subset of the Lua Standard Librairies (written in PIR)
 - a test suite (more than 980 tests)

For the first time, with Parrot 0.6.0, all garbage collection problems 
seem to be fixed.


Documentation starts in 
http://svn.perl.org/viewcvs/parrot/trunk/languages/lua/doc/running.pod?view=markup 
and 
http://svn.perl.org/viewcvs/parrot/trunk/languages/lua/doc/status.pod?view=markup.


Any comments, suggestions, bug report, test, improvement are welcome on 
Parrot mailing list (perl6-internals@perl.org).


François Perrad.






Re: [perl #49766] toplevel 'make perl6' needs dependency fixup.

2008-03-19 Thread Reini Urban
2008/3/19, Will Coleda via RT [EMAIL PROTECTED]:
 On Sat Jan 26 10:03:34 2008, coke wrote:
   On Mon Jan 14 11:26:27 2008, coke wrote:
In the top level directory, type:
   
'make perl6'
   
a perl6 binary is created.
   
now type make perl6 again, and the binary is regenerated from the
step ./pbc_to_exe languages/perl6/perl6.pbc on, despite the fact
that nothing has changed.
   
The perl6 target in languages/perl6 works as expected over multiple
invocations.
   
  
   This seems to be resolved, however, building perl6 now gives the
   following make warning:
  
   make: Circular perl6 - perl6 dependency dropped.
  
  

  This seems to be because we have both:

  perl6:

  and

  PERL6   = $(CUR_DIR)/perl6$(EXE)
  $(PERL6) : compilers $(PBC_TO_EXE)

  ... So on windows, I'm guessing that both perl6 and perl6.exe work as 
 targets with no
  warnings, but on unixy platforms, we get the warning.

  I would vote for requiring perl6.exe as the make target on windows, which 
 is how it's done
  in languages/perl6.

I like the idea of make perl6 only on windows.
make perl6.exe is just a file, make perl6 is a whole new world :)

One could

ifdef WINDIR
perl6 : $(PERL6)
endif

for the GNU-style makefile on cygwin
and with the appropriate nmake syntax on MSWin32

-- 
Reini Urban
http://phpwiki.org/  http://murbreak.at/


[perl #51898] nmake on cygwin

2008-03-19 Thread via RT
# New Ticket Created by  [EMAIL PROTECTED] 
# Please include the string:  [perl #51898]
# in the subject line of all future correspondence about this issue. 
# URL: http://rt.perl.org/rt3/Ticket/Display.html?id=51898 


---
osname= cygwin
osvers= 1.5.24(0.15642)
arch=   cygwin-thread-multi-64int
cc= gcc
---
Flags:
category=core
severity=critical
ack=no
---
Attached patch favors make over nmake on cygwin only, because there's
normally no gmake, but sometimes a nmake in the PATH.

---
Summary of my parrot 0.5.3 (r26420) configuration:
  configdate='Wed Mar 19 13:50:13 2008 GMT'
  Platform:
osname=cygwin, archname=i686-cygwin-thread-multi-64int
jitcapable=1, jitarchname=i386-cygwin,
jitosname=CYGWIN, jitcpuarch=i386
execcapable=1
perl=/usr/bin/perl5.10.0.exe
  Compiler:
cc='gcc', ccflags='-U__STRICT_ANSI__  -pipe -I/usr/local/include 
-DHASATTRIBUTE_CONST  -DHASATTRIBUTE_DEPRECATED  -DHASATTRIBUTE_FORMAT  
-DHASATTRIBUTE_MALLOC  -DHASATTRIBUTE_NONNULL  -DHASATTRIBUTE_NORETURN  
-DHASATTRIBUTE_PURE  -DHASATTRIBUTE_UNUSED  -DHASATTRIBUTE_WARN_UNUSED_RESULT  
-falign-functions=16 -maccumulate-outgoing-args -W -Wall -Waggregate-return 
-Wbad-function-cast -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment 
-Wdeclaration-after-statement -Wdisabled-optimization -Wendif-labels -Wextra 
-Wformat -Wformat-extra-args -Wformat-nonliteral -Wformat-security -Wformat-y2k 
-Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Wimport -Winit-self 
-Winline -Winvalid-pch -Wmain -Wmissing-braces -Wmissing-declarations 
-Wno-missing-format-attribute -Wmissing-prototypes -Wnested-externs -Wnonnull 
-Wpacked -Wparentheses -Wpointer-arith -Wreturn-type -Wsequence-point 
-Wno-shadow -Wsign-compare -Wstrict-aliasing -Wstrict-aliasing=2 -Wswitch 
-Wswitch-default -Wtr
 igraphs -Wundef -Wunknown-pragmas -Wno-unused -Wwrite-strings -DHAS_GETTEXT',
  Linker and Libraries:
ld='gcc', ldflags=' -Wl,--enable-auto-import -Wl,--export-all-symbols 
-Wl,--stack,8388608 -Wl,--enable-auto-image-base -L/usr/local/lib',
cc_ldflags='',
libs='-ldl -lcrypt -lgmp -lreadline -lcrypto'
  Dynamic Linking:
share_ext='.dll', ld_share_flags='-shared',
load_ext='.dll', ld_load_flags='-shared'
  Types:
iv=long, intvalsize=4, intsize=4, opcode_t=long, opcode_t_size=4,
ptrsize=4, ptr_alignment=1 byteorder=1234, 
nv=double, numvalsize=8, doublesize=8

---
Environment:
HOME =/home/URBANR
LANG  (unset)
LANGUAGE  (unset)
LD_LIBRARY_PATH  (unset)
LOGDIR  (unset)
PATH 
=blib/lib:/home/URBANR/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/WINDOWS/System32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/WBEM:/cygdrive/c/PROGRA~1/ATT/Graphviz/bin:/cygdrive/c/PROGRA~1/ATT/Graphviz/bin/tools:/usr/lib/lapack
SHELL  (unset)


Re: [perl #51860] Failures in t/manifest/*.t in a release

2008-03-19 Thread Bernhard Schmalhofer

James Keenan via RT schrieb:

On Tue Mar 18 12:58:08 2008, bernhard wrote:
  
When preparing the Parrot 0.6.0 release I encountered in an unpacked 
distfile  for

   prove -v t/manifest/*.t
the attached errors.

For the release I simply commented out the dubious tests.





Barney:

If I read parrotsketch correctly, these tests had not previously been
included in one of the test targets -- 'make fulltest', IIRC.  So there
obviously were not conditions I had anticipated when I originally wrote
them.
  

Yes,

I had added 'manifest_tests' to 'fulltest' a couple of days earlier.
There was no special reason to add it, just aiming to make 'fulltest'
as comprehensive as possible. So if the failures are hard to fix,
you can simple remove 'manifest_tests' from 'fulltest'.

The failures should be easily reproducable.
i. Ununcomment the 'RT#51860' lines in t/manifest/*.t
ii. 'make release'  = parrot-0.6.0-devel.tgz'
iii. Unpack the tarfile
iv. Run 'perl Configure.pl  make'
iv. Run 'make manifest_tests'

The '.svn' dirs are no in the unpacked dist. So it is assumed that 'svk' 
is used. But I don't have 'svn' installed.


Thanks for looking into that,
  Bernhard


If you could give me just a little bit more description of the problem
you experienced (or of the conditions under which the test will have to
be run), I will fix it.

Thank you very much.
kid51

  




YAPC::NA Talks??

2008-03-19 Thread Will Coleda
There is some time left to submit talks for YAPC::NA.

Anyone who has submitted talks or is thinking about it, please fill
out this wiki page:
http://www.perlfoundation.org/parrot/index.cgi?yapc_na_2008

Also, please add any talks you'd *like* to see or think would be a
good idea, even if you're not planning to present it yourself,  for
example.

* Adding a feature to rakudo (or some other HLL)
* Adding a language using Parrot Compiler Toolkit (ala KJ's Episodes)

 Also good are ideas ideas for the workshop or for lightning talks, like:

* How to attach a parrot diaper. (http://www.bird-diaper.com/)

-- 
Will Coke Coleda


Re: Character sets PDD ready for review

2008-03-19 Thread Allison Randal
I'm currently taking the architect and editor pass through the PDD, and 
am integrating the comments from the list.


Thanks!
Allison


[perl #39823] [CAGE] tools/dev/run_indent.pl -- this should be a test

2008-03-19 Thread James Keenan via RT
Committed to trunk in r26498.  Resolving ticket.


[perl #38405] [PATCH] cleanup Makefiles for cleaning/building, plus shared for darwin

2008-03-19 Thread James Keenan via RT
No one spoke up, so I am resolving the ticket.


[perl #42155] [PATCH] move members from Parrot_Interp to Parrot_Context

2008-03-19 Thread James Keenan via RT
No one spoke up, and no patch was resubmitted.  So I am resolving the
ticket.

kid51


[perl #51718] Consolidate test infrastructure in t/codingstd and t/distro

2008-03-19 Thread James Keenan via RT
On Tue Mar 18 12:27:52 2008, [EMAIL PROTECTED] wrote:

 I committed my previous patch (after some merging) as r26480.  But I
 think this ticket should stay open, as there are still more codingstd
 tests to convert, and I haven't even looked at t/distro yet.
 

Gladly offering ownership of this ticket to infinoid :-)

kid51


[perl #37542] [TODO] core - document behavior of multiple :load subpragmas in same compilation unit

2008-03-19 Thread James Keenan via RT
Per response from kjs, resolving ticket.

kid51


[perl #51860] Failures in t/manifest/*.t in a release

2008-03-19 Thread James Keenan via RT
On Wed Mar 19 13:33:00 2008, bernhard wrote:

 
 The '.svn' dirs are no in the unpacked dist. So it is assumed that 'svk' 
 is used. But I don't have 'svn' installed.
 


Have we found any way of saying, Unless you're working in a sandbox
checked out of the Parrot repository with one of our (unfortunately,
IMHO, rapidly growing number of) approved VCSes, don't run any tests
that touch on 'svn', 'svk' or 'git'?


Re: [perl #51860] Failures in t/manifest/*.t in a release

2008-03-19 Thread chromatic
On Wednesday 19 March 2008 16:07:49 James Keenan via RT wrote:

 On Wed Mar 19 13:33:00 2008, bernhard wrote:

  The '.svn' dirs are no in the unpacked dist. So it is assumed that 'svk'
  is used. But I don't have 'svn' installed.

 Have we found any way of saying, Unless you're working in a sandbox
 checked out of the Parrot repository with one of our (unfortunately,
 IMHO, rapidly growing number of) approved VCSes, don't run any tests
 that touch on 'svn', 'svk' or 'git'?

We don't include the DEVELOPING file in releases, right?  We could check for 
that.

-- c


[perl #39196] [TODO] tests - need to test addmethod

2008-03-19 Thread James Keenan via RT
Re-tested and committed to trunk in r26500.

kid51


[perl #39196] [TODO] tests - need to test addmethod

2008-03-19 Thread James Keenan via RT
Coke:  Can you estimate whether this meets your request in the OP?  Thanks.


[perl #51912] [BUG]: Changes to src/jit/ppc/jit_emit.h break 'make' on Darwin PPC

2008-03-19 Thread via RT
# New Ticket Created by  James Keenan 
# Please include the string:  [perl #51912]
# in the subject line of all future correspondence about this issue. 
# URL: http://rt.perl.org/rt3/Ticket/Display.html?id=51912 


Revisions made in r26491 today to src/jit/ppc/jit_emit.h have broken  
'make' for me on Darwin PPC.

Attachments:


r26491 | chromatic | 2008-03-19 03:13:39 -0400 (Wed, 19 Mar 2008) | 3 lines

[src] Changed CONTEXT(interp-ctx) to CONTEXT(interp), which seems clearer and
fulfills RT #41881.  If we need to rearrange how we store contexts in the
interpreter, we can rearrange it in only the macro now.



[li11-226:parrot] 537 $ svn diff -r {2008-03-18} ./src/jit/ppc/jit_emit.h
Index: src/jit/ppc/jit_emit.h
===
--- src/jit/ppc/jit_emit.h  (revision 26458)
+++ src/jit/ppc/jit_emit.h  (working copy)
@@ -877,7 +877,7 @@
 static void
 jit_get_params_pc(Parrot_jit_info_t *jit_info, PARROT_INTERP)
 {
-PMC*sig_pmc  = CONTEXT(interp-ctx)-constants[CUR_OPCODE[1]]-u.key;
+PMC*sig_pmc  = CONTEXT(interp)-constants[CUR_OPCODE[1]]-u.key;
 INTVAL *sig_bits = PMC_data_typed(sig_pmc, INTVAL *);
 INTVAL  n= PMC_int_val(sig_pmc);
 INTVAL  i;
@@ -905,7 +905,7 @@
 PMC *sig_pmc;
 INTVAL *sig_bits, sig;
 
-sig_pmc = CONTEXT(interp-ctx)-constants[CUR_OPCODE[1]]-u.key;
+sig_pmc = CONTEXT(interp)-constants[CUR_OPCODE[1]]-u.key;
 if (!SIG_ELEMS(sig_pmc))
 return;
 sig_bits = SIG_ARRAY(sig_pmc);
@@ -976,7 +976,7 @@
 internal_exception(1, set_args_jit - can't do that yet );
 }
 
-constants = CONTEXT(interp-ctx)-constants;
+constants = CONTEXT(interp)-constants;
 sig_args = constants[CUR_OPCODE[1]]-u.key;
 if (!SIG_ELEMS(sig_args))
 return;
@@ -1034,7 +1034,7 @@
 jit_emit_mflr(jit_info-native_ptr, r0);/* store link reg */
 jit_emit_stw(jit_info-native_ptr, r0, 8, r1); /* stw r0,8(r1) */
 jit_emit_stwu(jit_info-native_ptr, r1, -64, r1);
-used_i = CONTEXT(interp-ctx)-n_regs_used[REGNO_INT];
+used_i = CONTEXT(interp)-n_regs_used[REGNO_INT];
 reg_info = jit_info-arch_info-regs[jit_info-code_type];
 for (i = 0; i  used_i; ++i) {
 if (reg_info-map_I[i] == skip)
@@ -1054,7 +1054,7 @@
 int i, used_i, save_i;
 const jit_arch_regs *reg_info;
 
-used_i = CONTEXT(interp-ctx)-n_regs_used[REGNO_INT];
+used_i = CONTEXT(interp)-n_regs_used[REGNO_INT];
 reg_info = jit_info-arch_info-regs[jit_info-code_type];
 /* note - reversed order of jit_save_regs  */
 for (i = used_i - 1; i = 0; --i) {

src_jit_ppc__jit_emit.h.changes.txt:  What was changed and why.

Compiling with:
xx.c
/usr/bin/gcc-3.3 -I./include -fno-common -no-cpp-precomp -pipe 
-I/usr/local/include -pipe -fno-common -Wno-long-double -DHASATTRIBUTE_CONST 
-DHASATTRIBUTE_DEPRECATED -DHASATTRIBUTE_FORMAT -DHASATTRIBUTE_MALLOC 
-DHASATTRIBUTE_NONNULL -DHASATTRIBUTE_NORETURN -DHASATTRIBUTE_PURE 
-DHASATTRIBUTE_UNUSED -falign-functions=16 -W -Wall -Waggregate-return 
-Wbad-function-cast -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment 
-Wdisabled-optimization -Wendif-labels -Wformat -Wformat-extra-args 
-Wformat-nonliteral -Wformat-security -Wformat-y2k -Wimplicit 
-Wimplicit-function-declaration -Wimplicit-int -Wimport -Winline -Winvalid-pch 
-Wmain -Wmissing-braces -Wmissing-declarations -Wno-missing-format-attribute 
-Wmissing-prototypes -Wnested-externs -Wnonnull -Wpacked -Wparentheses 
-Wpointer-arith -Wreturn-type -Wsequence-point -Wno-shadow -Wsign-compare 
-Wstrict-aliasing -Wswitch -Wswitch-default -Wtrigraphs -Wundef 
-Wunknown-pragmas -Wno-unused -Wwrite-strings -I/sw/include -DHAS_GETTEXT -g 
-Wno-shadow -DHAS_JIT -DPPC -DHAVE_COMPUTED_GOTO -I. -o xx.o -c xx.c
/usr/local/bin/perl tools/build/ops2pm.pl src/ops/core.ops src/ops/bit.ops 
src/ops/cmp.ops src/ops/debug.ops src/ops/experimental.ops src/ops/io.ops 
src/ops/math.ops src/ops/object.ops src/ops/pic.ops src/ops/pmc.ops 
src/ops/set.ops src/ops/stack.ops src/ops/stm.ops src/ops/string.ops 
src/ops/sys.ops src/ops/var.ops 
gcd_i_n_n 1226   experimental, not in ops.num
gcd_i_nc_n1227   experimental, not in ops.num
gcd_i_n_nc1228   experimental, not in ops.num
gcd_i_nc_nc   1229   experimental, not in ops.num
gcd_i_i_i_i_i 1230   experimental, not in ops.num
gcd_i_i_i_ic_i1231   experimental, not in ops.num
gcd_i_i_i_i_ic1232   experimental, not in ops.num
gcd_i_i_i_ic_ic   1233   experimental, not in ops.num
splice_p_p_i_i1234   experimental, not in ops.num
splice_p_p_ic_i   1235   experimental, not in ops.num
splice_p_p_i_ic   1236   experimental, not in ops.num
splice_p_p_ic_ic  1237   experimental, not in ops.num

Re: [perl #51912] [BUG]: Changes to src/jit/ppc/jit_emit.h break 'make' on Darwin PPC

2008-03-19 Thread chromatic
On Wednesday 19 March 2008 17:40:03 James Keenan wrote:

 Revisions made in r26491 today to src/jit/ppc/jit_emit.h have broken
 'make' for me on Darwin PPC.

Actually, it's a lack of changes made to that file.  Does this patch fix 
things for you?

-- c

=== src/jit/ppc/core.jit
==
--- src/jit/ppc/core.jit	(revision 26508)
+++ src/jit/ppc/core.jit	(local)
@@ -1258,31 +1258,29 @@
 }
 
 Parrot_pic_callr___pc {
-int offset, here, op_i;
-PackFile_Constant ** constants;
-PMC *sig_params, *sig_result;
-opcode_t *params;
+PackFile_Constant **constants  = CONTEXT(interp)-constants;
+PMC   **sig_result = constants[CUR_OPCODE[1]]-u.key;
+opcode_t   *params = jit_info-optimizer-sections-begin;
+PMC*sig_params = constants[params[1]]-u.key;
+int offset = jit_info-arena.op_map[op_i].offset;
+int here   = NATIVECODE - jit_info-arena.start;
+int op_i   = SIG_ELEMS(sig_params) + 2;
 int skip;
 
-constants = CONTEXT(interp-ctx)-constants;
-params = jit_info-optimizer-sections-begin;
-sig_params = constants[params[1]]-u.key;
-op_i = 2 + SIG_ELEMS(sig_params);
-
-offset = jit_info-arena.op_map[op_i].offset;
 /* TODO preserve necessary regs */
 assert(*CUR_OPCODE == PARROT_OP_get_results_pc);
-constants = CONTEXT(interp-ctx)-constants;
-sig_result = constants[CUR_OPCODE[1]]-u.key;
+
 if (!SIG_ELEMS(sig_result))
-skip = -1;
+skip = -1;
+/* skip result - save rest */
 else
-skip = MAP(2);  /* skip result - save rest */
+skip = MAP(2);
 
-here = NATIVECODE - jit_info-arena.start;
 offset -= here;
-_emit_bx(NATIVECODE, 1, offset); /* bl */
 
+/* bl */
+_emit_bx(NATIVECODE, 1, offset);
+
 jit_restore_regs_call(jit_info, interp, skip);
 }
 
@@ -1302,13 +1300,12 @@
 offsetof(parrot_context_t, current_results), ISR2);
 }
 else {
-PackFile_Constant ** constants;
-PMC *sig_result;
+PackFile_Constant **constants  = CONTEXT(interp)-constants;
+PMC*sig_result = constants[CUR_OPCODE[1]]-u.key;
 
-constants = CONTEXT(interp-ctx)-constants;
-sig_result = constants[CUR_OPCODE[1]]-u.key;
 if (!SIG_ELEMS(sig_result))
 return;
+
 /* result is r3 TODO Nums */
 jit_emit_mov_rr(NATIVECODE, MAP(2), r3);
 }