# New Ticket Created by  Peter Sinnott 
# Please include the string:  [perl #34617]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=34617 >


---
osname= linux
osvers= 2.4.27-ti1211
arch=   i386-linux-thread-multi
cc=     cc 
---
Flags:
    category=core
    severity=medium
    ack=no
---
Runing make test with parrot compiled with gcc 3.3.5 is failing the following 
test.

Failed Test          Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/library/md5.t         4  1024     4    4 100.00%  1-4
t/pmc/mmd.t             6  1536    18    6  33.33%  10-15
t/pmc/object-meths.t    2   512    29    2   6.90%  28-29
2 tests and 63 subtests skipped.
Failed 3/145 test scripts, 97.93% okay. 12/2370 subtests failed, 99.49% okay.


These seem to be failing with linux gcc 2.72 , 3.2 , 3.3 and 3.4 but not 2.95
gcc3.3 on free bsd is also failing. From a quick look at the cores and based
on them all starting to fail around the same time they seem to be caused by the
same thing. Failure started about 5pm gmt(or maybe ist,whatever we are now)

http://unlinked.vm.bytemark.co.uk/tinder//parrot/status.html

Backtrace 

#0  0x08161abd in fixup_bsrs (interpreter=0x82f9f08) at imcc/pbc.c:482
482                         assert(s1->unit);
(gdb) backtrace
#0  0x08161abd in fixup_bsrs (interpreter=0x82f9f08) at imcc/pbc.c:482
#1  0x08163471 in e_pbc_close (interpreter=0x82f9f08, param=0x0) at 
imcc/pbc.c:1180
#2  0x08159ba7 in emit_close (interp=0x82f9f08, param=0x0) at 
imcc/instructions.c:561
#3  0x08156a93 in imc_compile_all_units (interp=0x82f9f08) at imcc/imc.c:46
#4  0x0809d9c9 in main (argc=1, argv=0xbffff75c) at imcc/main.c:538

I have looked at the object meth failures and isolated the failures to

.sub main @MAIN
    .local pmc o, m, cl

    o = getstdout
    $I0 = "puts"(o, "ok 3\n")
.end

.sub main @MAIN
    .local pmc x, y, cl, m
    x = new Float
    x = 1.0
    print "function      "
    y = "cos"(x)
    print y
    print "\n"
.end

If I run either of these ie ./parrot eg.imc parrot cores
If I run ./parrot -o eg.pasm eg.imc and then run ./parrot eg.pasm
I get error:imcc:undefined identifier 'puts' or error:imcc:undefined identifier 
'cos'
If I replace set_p_pc P0, puts  with find_name P0 , "puts" in the pasm the
programs work.

With parrot compiled with gcc 295 I can run the imc above but parrot generates 
the same pasm
as with the broken parrots and fails with the same error message 
error:imcc:undefined identifier 'puts'


---
Summary of my parrot 0.1.2 configuration:
  configdate='Wed Mar 30 18:12:42 2005'
  Platform:
    osname=linux, archname=i386-linux-thread-multi
    jitcapable=1, jitarchname=i386-linux,
    jitosname=LINUX, jitcpuarch=i386
    execcapable=1
    perl=/usr/bin/perl
  Compiler:
    cc='cc', ccflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN  
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
  Linker and Libraries:
    ld='cc', ldflags=' -L/usr/local/lib',
    cc_ldflags='',
    libs='-ldl -lm -lpthread -lcrypt -lrt -lgmp'
  Dynamic Linking:
    share_ext='.so', ld_share_flags='-shared -L/usr/local/lib -fPIC',
    load_ext='.so', ld_load_flags='-shared -L/usr/local/lib -fPIC'
  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    LANG    LANGUAGE    LD_LIBRARY_PATH    LOGDIR    PATH    SHELL

Reply via email to