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 middle-end/18548] [4.0 Regression] Miscompiles code generated by Gambit-C Scheme->C compiler


------- Additional Comments From belyshev at lubercy dot com  2004-12-17 23:28 -------
We expanding this:

  ___r2.303 = MAX_EXPR <___r3.316, *((int *) ___r2.303 + 1B)>;

into this:

(insn 12778 12777 12779 1127 (set (reg/v:SI 1280 [ ___r2.303 ])
        (reg/v:SI 1273 [ ___r3.316 ])) -1 (nil)
    (nil))

(insn 12779 12778 12780 1127 (set (reg:CCGC 17 flags)
        (compare:CCGC (reg/v:SI 1280 [ ___r2.303 ])
            (mem:SI (plus:SI (reg/v:SI 1280 [ ___r2.303 ])
                    (const_int 1 [0x1])) [0 S4 A32]))) -1 (nil)
    (nil))

... which is wrong. So the problem is with expander, unless i am mistaken.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|tree-optimization           |middle-end


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


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