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



Seth LaForge <sethml at google dot com> changed:



           What    |Removed                     |Added

----------------------------------------------------------------------------

                 CC|                            |sethml at google dot com



--- Comment #3 from Seth LaForge <sethml at google dot com> 2013-02-15 22:43:56 
UTC ---

Thank you Andrew, super useful pointer!  Yes, that patch does appear to fix my

problem.  I've backported it to gcc 4.7 and posted a patch:

http://gcc.gnu.org/ml/gcc-patches/2013-02/msg00800.html



With gcc 4.7.2 with my/Julian's patch, I get correct code:



  43                PrintAndStoreUnaligned:

  46 0020 B538        push  {r3, r4, r5, lr}

  47 0022 EC523B10    fmrrd r3, r2, d0

  48 0026 4614        mov r4, r2

  49 0028 461D        mov r5, r3

  50 002a 4622        mov r2, r4

  51 002c EC423B10    fmdrr d0, r3, r2            

  52 0030 F7FFFFFE    bl  PrintDouble

  53 0034 F2400300    movw  r3, #:lower16:unaligned_double

  54 0038 F2C00300    movt  r3, #:upper16:unaligned_double

  55 003c 605D        str r5, [r3, #4]

  56 003e 601C        str r4, [r3, #0]                                          

  57 0040 BD38        pop {r3, r4, r5, pc}

Reply via email to