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 target/69008] gcc emits unneeded memory access when passing trivial structs by value (ARM)


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69008

ktkachov at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-12-22
                 CC|                            |ktkachov at gcc dot gnu.org
     Ever confirmed|0                           |1
      Known to fail|                            |4.8.5, 4.9.4, 5.3.1, 6.0

--- Comment #1 from ktkachov at gcc dot gnu.org ---
Confirmed on all versions that I have access to.
The expander emits:
(insn 2 5 3 2 (set (reg:SI 113)
        (plus:SI (reg/f:SI 105 virtual-stack-vars)
            (const_int -8 [0xfffffffffffffff8]))) missed.c:7 -1
     (nil))
(insn 3 2 4 2 (parallel [
            (set (mem/c:SI (reg:SI 113) [1 t+0 S4 A32])
                (reg:SI 0 r0))
            (set (mem/c:SI (plus:SI (reg:SI 113)
                        (const_int 4 [0x4])) [1 t+4 S4 A32])
                (reg:SI 1 r1))
        ]) missed.c:7 -1
     (nil))
(note 4 3 7 2 NOTE_INSN_FUNCTION_BEG)
(insn 7 4 8 2 (set (reg:SI 115)
        (mem/c:SI (plus:SI (reg/f:SI 105 virtual-stack-vars)
                (const_int -8 [0xfffffffffffffff8])) [2 t.i1+0 S4 A32]))
missed.c:8 -1
     (nil))
(insn 8 7 9 2 (set (reg:SI 116)
        (mem/c:SI (plus:SI (reg/f:SI 105 virtual-stack-vars)
                (const_int -4 [0xfffffffffffffffc])) [2 t.i2+0 S4 A32]))
missed.c:8 -1
     (nil))
(insn 9 8 10 2 (set (reg:SI 114)
        (plus:SI (reg:SI 115)
            (reg:SI 116))) missed.c:8 -1
     (nil))

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