This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Some PCH tests fail on mips-irix6
> From: Geoff Keating <geoffk@geoffk.org>
>
> > Date: Mon, 13 Jan 2003 16:27:56 -0500 (EST)
> > From: "Kaveh R. Ghazi" <ghazi@caip.rutgers.edu>
>
> > Results for mips-irix6, some (but not all) of the PCH tests fail:
> > http://gcc.gnu.org/ml/gcc-testresults/2003-01/msg00575.html
> > http://gcc.gnu.org/ml/gcc-testresults/2003-01/msg00601.html
> >
> > The logfile says we get assembly diffs. I'm not sure what I need to
> > send you in order for you to debug. Let me know.
>
> The other failures indicate some MIPS-specific problem. Most likely,
> there's a counter somewhere that's not being saved/restored. Looking
> at the differences will probably make it obvious where the counter is.
With the latest checkout most of the -g failures are gone. We're left
with these http://gcc.gnu.org/ml/gcc-testresults/2003-01/msg00878.html
g++:
FAIL: pch/system-1.C -g assembly comparison
FAIL: pch/system-1.C -O2 -g assembly comparison
FAIL: pch/system-1.C -O2 assembly comparison
gcc:
FAIL: pch/static-1.c -O0 assembly comparison
FAIL: pch/static-1.c -O1 assembly comparison
FAIL: pch/static-1.c -O2 assembly comparison
FAIL: pch/static-1.c -Os assembly comparison
FAIL: pch/static-2.c -O0 assembly comparison
FAIL: pch/static-2.c -O1 assembly comparison
FAIL: pch/static-2.c -O2 assembly comparison
FAIL: pch/static-2.c -Os assembly comparison
We've still got a few g++ -g diffs, not sure why.
The C failures are all code, not debug info. I've included the
assembly diffs for static-1.c -O0. Hopefully the counter (in mips.c?)
will be "obvious" to someone besides me. :-)
Executing on host: /caip/u58/ghazi/gcc-testing/build/gcc/xgcc -B/caip/u58/ghazi/gcc-testing/build/gcc/ static-1.h -O0 -o static-1.h.pch (timeout = 300)
spawn /caip/u58/ghazi/gcc-testing/build/gcc/xgcc -B/caip/u58/ghazi/gcc-testing/build/gcc/ static-1.h -O0 -o static-1.h.pch
PASS: static-1.h (test for excess errors)
Executing on host: /caip/u58/ghazi/gcc-testing/build/gcc/xgcc -B/caip/u58/ghazi/gcc-testing/build/gcc/ /caip/u58/ghazi/gcc-testing/egcc-CVS20030119/gcc/testsuite/gcc.dg/pch/static-1.c -O0 -I. -S -o static-1.s (timeout = 300)
spawn /caip/u58/ghazi/gcc-testing/build/gcc/xgcc -B/caip/u58/ghazi/gcc-testing/build/gcc/ /caip/u58/ghazi/gcc-testing/egcc-CVS20030119/gcc/testsuite/gcc.dg/pch/static-1.c -O0 -I. -S -o static-1.s
PASS: gcc.dg/pch/static-1.c (test for excess errors)
Executing on host: /caip/u58/ghazi/gcc-testing/build/gcc/xgcc -B/caip/u58/ghazi/gcc-testing/build/gcc/ /caip/u58/ghazi/gcc-testing/egcc-CVS20030119/gcc/testsuite/gcc.dg/pch/static-1.c -O0 -I. -S -o static-1.s (timeout = 300)
spawn /caip/u58/ghazi/gcc-testing/build/gcc/xgcc -B/caip/u58/ghazi/gcc-testing/build/gcc/ /caip/u58/ghazi/gcc-testing/egcc-CVS20030119/gcc/testsuite/gcc.dg/pch/static-1.c -O0 -I. -S -o static-1.s
PASS: gcc.dg/pch/static-1.c (test for excess errors)
line #13
< #.file 1 "static-1.h"
> .frame $fp,32,$31 # vars= 0, regs= 2/0, args= 0, extra= 16
line #14
< .frame $fp,32,$31 # vars= 0, regs= 2/0, args= 0, extra= 16
> .mask 0x50000000,-8
line #15
< .mask 0x50000000,-8
> .fmask 0x00000000,0
line #16
< .fmask 0x00000000,0
> subu $sp,$sp,32
line #17
< subu $sp,$sp,32
> .LCFI0:
line #18
< .LCFI0:
> sd $fp,24($sp)
line #19
< sd $fp,24($sp)
> .LCFI1:
line #20
< .LCFI1:
> sd $28,16($sp)
line #21
< sd $28,16($sp)
> .LCFI2:
line #22
< .LCFI2:
> move $fp,$sp
line #23
< move $fp,$sp
> .LCFI3:
line #24
< .LCFI3:
> .set noat
line #25
< .set noat
> lui $1,%hi(%neg(%gp_rel(foo)))
line #26
< lui $1,%hi(%neg(%gp_rel(foo)))
> addiu $1,$1,%lo(%neg(%gp_rel(foo)))
line #27
< addiu $1,$1,%lo(%neg(%gp_rel(foo)))
> daddu $gp,$1,$25
line #28
< daddu $gp,$1,$25
> .set at
line #29
< .set at
> la $3,counter.0
line #30
< la $3,counter.0
> lw $2,0($3)
line #31
< lw $2,0($3)
> move $4,$2
line #32
< move $4,$2
> addu $2,$2,1
line #33
< addu $2,$2,1
> sw $2,0($3)
line #34
< sw $2,0($3)
> move $2,$4
line #35
< move $2,$4
> move $sp,$fp
line #36
< move $sp,$fp
> ld $fp,24($sp)
line #37
< ld $fp,24($sp)
> ld $28,16($sp)
line #38
< ld $28,16($sp)
> addu $sp,$sp,32
line #39
< addu $sp,$sp,32
> j $31
line #40
< j $31
> .LFE3:
line #41
< .LFE3:
> .end foo
line #42
< .end foo
> .section .bss
line #43
< .section .bss
> counter.1:
line #44
< counter.1:
> .align 2
line #45
< .align 2
> .space 4
line #46
< .space 4
> .text
line #47
< .text
> .align 2
line #48
< .align 2
> .ent bar
line #49
< .ent bar
> bar:
line #50
< bar:
> .LFB5:
line #51
< .LFB5:
> .frame $fp,32,$31 # vars= 0, regs= 2/0, args= 0, extra= 16
line #52
< #.file 1 "/caip/u58/ghazi/gcc-testing/egcc-CVS20030119/gcc/testsuite/gcc.dg/pch/static-1.c"
> .mask 0x50000000,-8
line #53
< .frame $fp,32,$31 # vars= 0, regs= 2/0, args= 0, extra= 16
> .fmask 0x00000000,0
line #54
< .mask 0x50000000,-8
> subu $sp,$sp,32
line #55
< .fmask 0x00000000,0
> .LCFI0:
line #56
< subu $sp,$sp,32
> sd $fp,24($sp)
line #57
< .LCFI4:
> .LCFI1:
line #58
< sd $fp,24($sp)
> sd $28,16($sp)
line #59
< .LCFI5:
> .LCFI2:
line #60
< sd $28,16($sp)
> move $fp,$sp
line #61
< .LCFI6:
> .LCFI3:
line #62
< move $fp,$sp
> .set noat
line #63
< .LCFI7:
> lui $1,%hi(%neg(%gp_rel(bar)))
line #64
< .set noat
> addiu $1,$1,%lo(%neg(%gp_rel(bar)))
line #65
< lui $1,%hi(%neg(%gp_rel(bar)))
> daddu $gp,$1,$25
line #66
< addiu $1,$1,%lo(%neg(%gp_rel(bar)))
> .set at
line #67
< daddu $gp,$1,$25
> la $3,counter.1
line #68
< .set at
> lw $2,0($3)
line #69
< la $3,counter.1
> move $4,$2
line #70
< lw $2,0($3)
> addu $2,$2,1
line #71
< move $4,$2
> sw $2,0($3)
line #72
< addu $2,$2,1
> move $2,$4
line #73
< sw $2,0($3)
> move $sp,$fp
line #74
< move $2,$4
> ld $fp,24($sp)
line #75
< move $sp,$fp
> ld $28,16($sp)
line #76
< ld $fp,24($sp)
> addu $sp,$sp,32
line #77
< ld $28,16($sp)
> j $31
line #78
< addu $sp,$sp,32
> .LFE5:
line #79
< j $31
> .end bar
line #80
< .LFE5:
>
line #81
< .end bar
>
FAIL: pch/static-1.c -O0 assembly comparison