]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
linux.h (CRT_GET_RFIB_DATA): Add Intel syntax inline asm to macro.
authorRask Ingemann Lambertsen <rask@sygehus.dk>
Wed, 28 Nov 2007 01:04:27 +0000 (02:04 +0100)
committerRask Ingemann Lambertsen <rask@gcc.gnu.org>
Wed, 28 Nov 2007 01:04:27 +0000 (01:04 +0000)
* config/i386/linux.h (CRT_GET_RFIB_DATA): Add Intel syntax inline
asm to macro.
* config/i386/sco5.h (CRT_GET_RFIB_DATA): Likewise.
* config/i386/sysv4.h (CRT_GET_RFIB_DATA): Likewise.

From-SVN: r130485

gcc/ChangeLog
gcc/config/i386/linux.h
gcc/config/i386/sco5.h
gcc/config/i386/sysv4.h

index cc16b231d794409b0fac7b35c21a7678f1f327ca..a4c11ddd03c25ba41c1c74b43519deff661e3ecd 100644 (file)
@@ -1,3 +1,10 @@
+2007-11-28  Rask Ingemann Lambertsen  <rask@sygehus.dk>
+
+       * config/i386/linux.h (CRT_GET_RFIB_DATA): Add Intel syntax inline
+       asm to macro.
+       * config/i386/sco5.h (CRT_GET_RFIB_DATA): Likewise.
+       * config/i386/sysv4.h (CRT_GET_RFIB_DATA): Likewise.
+
 2007-11-28  Ben Elliston  <bje@au.ibm.com>
 
        * config/rs6000/aix64.opt (maix64): Add Negative(maix32).
index d59dc04bbc0dd891a62835b36bd6cca3d7977d83..ac8149885fc0701d7614bf06e6d27b1b61d0520a 100644 (file)
@@ -180,11 +180,12 @@ along with GCC; see the file COPYING3.  If not see
 #define CRT_GET_RFIB_DATA(BASE)                                                \
   __asm__ ("call\t.LPR%=\n"                                            \
           ".LPR%=:\n\t"                                                \
-          "popl\t%0\n\t"                                               \
+          "pop{l}\t%0\n\t"                                             \
           /* Due to a GAS bug, this cannot use EAX.  That encodes      \
              smaller than the traditional EBX, which results in the    \
              offset being off by one.  */                              \
-          "addl\t$_GLOBAL_OFFSET_TABLE_+[.-.LPR%=],%0"                 \
+          "add{l}\t{$_GLOBAL_OFFSET_TABLE_+[.-.LPR%=],%0"              \
+                  "|%0,_GLOBAL_OFFSET_TABLE_+(.-.LPR%=)}"              \
           : "=d"(BASE))
 #endif
 
index 9706846bd23d08a35a2553b8bb78a273340dd7e2..4f19fd4f85d8033940ad7e59a0f7e5cf9598e043 100644 (file)
@@ -300,11 +300,12 @@ along with GCC; see the file COPYING3.  If not see
 #define CRT_GET_RFIB_DATA(BASE)                                                \
   __asm__ ("call\t.LPR%=\n"                                            \
           ".LPR%=:\n\t"                                                \
-          "popl\t%0\n\t"                                               \
+          "pop{l}\t%0\n\t"                                             \
           /* Due to a GAS bug, this cannot use EAX.  That encodes      \
              smaller than the traditional EBX, which results in the    \
              offset being off by one.  */                              \
-          "addl\t$_GLOBAL_OFFSET_TABLE_+[.-.LPR%=],%0"                 \
+          "add{l}\t{$_GLOBAL_OFFSET_TABLE_+[.-.LPR%=],%0"              \
+                  "|%0,_GLOBAL_OFFSET_TABLE_+(.-.LPR%=)}"              \
           : "=d"(BASE))
 #endif
 
index f9180e27ba5f2e5b1578fda789d161402d144947..e10527249370bad30988d05a3037fdf43f86568f 100644 (file)
@@ -123,10 +123,11 @@ along with GCC; see the file COPYING3.  If not see
 #define CRT_GET_RFIB_DATA(BASE)                                                \
   __asm__ ("call\t.LPR%=\n"                                            \
           ".LPR%=:\n\t"                                                \
-          "popl\t%0\n\t"                                               \
+          "pop{l}\t%0\n\t"                                             \
           /* Due to a GAS bug, this cannot use EAX.  That encodes      \
              smaller than the traditional EBX, which results in the    \
              offset being off by one.  */                              \
-          "addl\t$_GLOBAL_OFFSET_TABLE_+[.-.LPR%=],%0"                 \
+          "add{l}\t{$_GLOBAL_OFFSET_TABLE_+[.-.LPR%=],%0"              \
+                  "|%0,_GLOBAL_OFFSET_TABLE_+(.-.LPR%=)}"              \
           : "=d"(BASE))
 #endif