This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug rtl-optimization/23105] New: FAIL: gcc.dg/fold-abs-2.c execution test


Executing on host: /home/dave/gnu/gcc-4.0/objdir/gcc/xgcc -B/home/dave/gnu/gcc-4
.0/objdir/gcc/ /home/dave/gnu/gcc-4.0/gcc/gcc/testsuite/gcc.dg/fold-abs-2.c   -O
1 -fwrapv -fno-show-column  -lm   -o ./fold-abs-2.exe    (timeout = 300)
PASS: gcc.dg/fold-abs-2.c (test for excess errors)
Setting LD_LIBRARY_PATH to :/home/dave/gnu/gcc-4.0/objdir/gcc::/home/dave/gnu/gc
c-4.0/objdir/gcc:/usr/lib/debug
FAIL: gcc.dg/fold-abs-2.c execution test

.globl f
        .type   f, @function
f:
        .PROC
        .CALLINFO FRAME=0,NO_CALLS
        .ENTRY
        bv %r0(%r2)
        ldi 1,%r28
        .EXIT
        .PROCEND
        .size   f, .-f

So, f always returns 1.

This appears to be a combine bug.  We have the following in life:

;; Start of basic block 0, registers live: 3 [%r3] 26 [%r26] 30 [%r30]
(note 9 2 6 0 [bb 0] NOTE_INSN_BASIC_BLOCK)

(insn 6 9 7 0 (set (reg/v:SI 95 [ a ])
        (reg:SI 26 %r26 [ a ])) 37 {*pa.md:2291} (nil)
    (expr_list:REG_DEAD (reg:SI 26 %r26 [ a ])
        (expr_list:REG_EQUIV (mem/i:SI (plus:SI (reg/f:SI 3 %r3)
                    (const_int -36 [0xffffffdc])) [0 a+0 S4 A32])
            (nil))))

(note 7 6 11 0 NOTE_INSN_FUNCTION_BEG)

(insn 11 7 12 0 (set (reg:SI 97)
        (abs:SI (reg/v:SI 95 [ a ]))) 22 {abssi2} (insn_list:REG_DEP_TRUE 6 (nil
))
    (expr_list:REG_DEAD (reg/v:SI 95 [ a ])
        (nil)))

(insn 12 11 13 0 (set (reg:SI 99)
        (not:SI (reg:SI 97))) 131 {one_cmplsi2} (insn_list:REG_DEP_TRUE 11 (nil)
)
    (expr_list:REG_DEAD (reg:SI 97)
        (nil)))

(insn 13 12 17 0 (set (reg:SI 98)
        (lshiftrt:SI (reg:SI 99)
            (const_int 31 [0x1f]))) 178 {lshrsi3} (insn_list:REG_DEP_TRUE 12 (ni
l))
    (expr_list:REG_DEAD (reg:SI 99)
        (nil)))

(note 17 13 20 0 NOTE_INSN_FUNCTION_END)

(insn 20 17 26 0 (set (reg/i:SI 28 %r28 [ <result> ])
        (reg:SI 98)) 37 {*pa.md:2291} (insn_list:REG_DEP_TRUE 13 (nil))
    (expr_list:REG_DEAD (reg:SI 98)
        (nil)))

(insn 26 20 0 0 (use (reg/i:SI 28 %r28 [ <result> ])) -1 (insn_list:REG_DEP_TRUE
 20 (nil))
    (nil))
;; End of basic block 0, registers live:
 3 [%r3] 28 [%r28] 30 [%r30]

After combine, we have:

;; Start of basic block 0, registers live: 3 [%r3] 30 [%r30]
(note 9 2 6 0 [bb 0] NOTE_INSN_BASIC_BLOCK)

(note 6 9 7 0 NOTE_INSN_DELETED)

(note 7 6 11 0 NOTE_INSN_FUNCTION_BEG)

(note 11 7 12 0 NOTE_INSN_DELETED)

(note 12 11 13 0 NOTE_INSN_DELETED)

(note 13 12 17 0 NOTE_INSN_DELETED)

(note 17 13 20 0 NOTE_INSN_FUNCTION_END)

(insn 20 17 26 0 (set (reg/i:SI 28 %r28 [ <result> ])
        (const_int 1 [0x1])) 37 {*pa.md:2291} (nil)
    (nil))

(insn 26 20 0 0 (use (reg/i:SI 28 %r28 [ <result> ])) -1 (insn_list:REG_DEP_TRUE
 20 (nil))
    (nil))
;; End of basic block 0, registers live:
 3 [%r3] 28 [%r28] 30 [%r30]

-- 
           Summary: FAIL: gcc.dg/fold-abs-2.c execution test
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: rtl-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: danglin at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: hppa*-*-*
  GCC host triplet: hppa*-*-*
GCC target triplet: hppa*-*-*


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23105


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]