aix43.h (RS6000_CALL_GLUE): Delete.
authorSegher Boessenkool <segher@kernel.crashing.org>
Fri, 7 Sep 2012 08:06:43 +0000 (10:06 +0200)
committerSegher Boessenkool <segher@gcc.gnu.org>
Fri, 7 Sep 2012 08:06:43 +0000 (10:06 +0200)
2012-09-07  Segher Boessenkool  <segher@kernel.crashing.org>

gcc/
* config/rs6000/aix43.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/aix51.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/aix52.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/aix53.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/aix61.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/freebsd64.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/linux64.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/rs6000.c (print_operand) ['.']: Delete.
* config/rs6000/rs6000.h (RS6000_CALL_GLUE): Delete.
* config/rs6000/rs6000.md (tls_gd_aix<TLSmode:tls_abi_suffix>):
Replace %. with nop.
(tls_gd_call_aix<TLSmode:tls_abi_suffix>): Ditto.
(tls_ld_aix<TLSmode:tls_abi_suffix>): Ditto.
(tls_ld_call_aix<TLSmode:tls_abi_suffix>): Ditto.
(call_nonlocal_aix32): Ditto.
(call_nonlocal_aix64): Ditto.
(call_value_nonlocal_aix32): Ditto.
(call_value_nonlocal_aix64): Ditto.

From-SVN: r191055

gcc/ChangeLog
gcc/config/rs6000/aix43.h
gcc/config/rs6000/aix51.h
gcc/config/rs6000/aix52.h
gcc/config/rs6000/aix53.h
gcc/config/rs6000/aix61.h
gcc/config/rs6000/freebsd64.h
gcc/config/rs6000/linux64.h
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.h
gcc/config/rs6000/rs6000.md

index 1c910cbaad3d64247e317c2ea352962a5258263c..353978190c977a85916cf4ea8d5e52984abd4b42 100644 (file)
@@ -1,3 +1,24 @@
+2012-09-07  Segher Boessenkool  <segher@kernel.crashing.org>
+
+       * config/rs6000/aix43.h (RS6000_CALL_GLUE): Delete.
+       * config/rs6000/aix51.h (RS6000_CALL_GLUE): Delete.
+       * config/rs6000/aix52.h (RS6000_CALL_GLUE): Delete.
+       * config/rs6000/aix53.h (RS6000_CALL_GLUE): Delete.
+       * config/rs6000/aix61.h (RS6000_CALL_GLUE): Delete.
+       * config/rs6000/freebsd64.h (RS6000_CALL_GLUE): Delete.
+       * config/rs6000/linux64.h (RS6000_CALL_GLUE): Delete.
+       * config/rs6000/rs6000.c (print_operand) ['.']: Delete.
+       * config/rs6000/rs6000.h (RS6000_CALL_GLUE): Delete.
+       * config/rs6000/rs6000.md (tls_gd_aix<TLSmode:tls_abi_suffix>):
+       Replace %. with nop.
+       (tls_gd_call_aix<TLSmode:tls_abi_suffix>): Ditto.
+       (tls_ld_aix<TLSmode:tls_abi_suffix>): Ditto.
+       (tls_ld_call_aix<TLSmode:tls_abi_suffix>): Ditto.
+       (call_nonlocal_aix32): Ditto.
+       (call_nonlocal_aix64): Ditto.
+       (call_value_nonlocal_aix32): Ditto.
+       (call_value_nonlocal_aix64): Ditto.
+
 2012-06-04  Andi Kleen <ak@linux.intel.com>
 
        * doc/invoke.texi (-ffat-lto-objects): Clarify that gcc-ar
index c1a69dc3a5ac2ee3de40d82a7a862e1be2fc1f5e..8ff211107ecc90a3fdcb26f17b5416a916dc6ae3 100644 (file)
@@ -142,12 +142,6 @@ do {                                                                       \
 #undef PTRDIFF_TYPE
 #define PTRDIFF_TYPE "long int"
 
-/* AIX 4 uses PowerPC nop (ori 0,0,0) instruction as call glue for PowerPC
-   and "cror 31,31,31" for POWER architecture.  */
-
-#undef RS6000_CALL_GLUE
-#define RS6000_CALL_GLUE "nop"
-
 /* AIX 4.2 and above provides initialization and finalization function
    support from linker command line.  */
 #undef HAS_INIT_SECTION
index 6ea30c1fba1d2d290f2a4b939ee9fccf76477020..d62d3fb5d90975e81ef8a13c360359c5a5fbbde8 100644 (file)
@@ -146,12 +146,6 @@ do {                                                                       \
 #undef  WCHAR_TYPE_SIZE
 #define WCHAR_TYPE_SIZE (!TARGET_64BIT ? 16 : 32)
 
-/* AIX V5 uses PowerPC nop (ori 0,0,0) instruction as call glue for PowerPC
-   and "cror 31,31,31" for POWER architecture.  */
-
-#undef RS6000_CALL_GLUE
-#define RS6000_CALL_GLUE "nop"
-
 /* AIX 4.2 and above provides initialization and finalization function
    support from linker command line.  */
 #undef HAS_INIT_SECTION
index 1c9e77f962687d425261b4e09a4e7583f6206a5e..02b966d1f5b0ff10634720fda054269a95e018b7 100644 (file)
@@ -158,12 +158,6 @@ do {                                                                       \
 #undef  WCHAR_TYPE_SIZE
 #define WCHAR_TYPE_SIZE (!TARGET_64BIT ? 16 : 32)
 
-/* AIX V5 uses PowerPC nop (ori 0,0,0) instruction as call glue for PowerPC
-   and "cror 31,31,31" for POWER architecture.  */
-
-#undef RS6000_CALL_GLUE
-#define RS6000_CALL_GLUE "nop"
-
 /* AIX 4.2 and above provides initialization and finalization function
    support from linker command line.  */
 #undef HAS_INIT_SECTION
index d1a99e9c03599d1752caab795867b54c6de7b526..870eb0618d4b7037a403393e92c5d12a7ab2e7ab 100644 (file)
@@ -156,12 +156,6 @@ do {                                                                       \
 #undef  WCHAR_TYPE_SIZE
 #define WCHAR_TYPE_SIZE (!TARGET_64BIT ? 16 : 32)
 
-/* AIX V5 uses PowerPC nop (ori 0,0,0) instruction as call glue for PowerPC
-   and "cror 31,31,31" for POWER architecture.  */
-
-#undef RS6000_CALL_GLUE
-#define RS6000_CALL_GLUE "nop"
-
 /* AIX 4.2 and above provides initialization and finalization function
    support from linker command line.  */
 #undef HAS_INIT_SECTION
index 663777c47cfc740dde8b94833be886e22c0e9eee..92168990a01826328fd0df2f79fcb8358df3b22a 100644 (file)
@@ -157,12 +157,6 @@ do {                                                                       \
 #undef  WCHAR_TYPE_SIZE
 #define WCHAR_TYPE_SIZE (!TARGET_64BIT ? 16 : 32)
 
-/* AIX V5 uses PowerPC nop (ori 0,0,0) instruction as call glue for PowerPC
-   and "cror 31,31,31" for POWER architecture.  */
-
-#undef RS6000_CALL_GLUE
-#define RS6000_CALL_GLUE "nop"
-
 /* AIX 4.2 and above provides initialization and finalization function
    support from linker command line.  */
 #undef HAS_INIT_SECTION
index 909f703a07eb058843769818c7282012231d1ab8..d434ace28f3b8d8542bd5e427522f1e91fdc031f 100644 (file)
@@ -316,10 +316,6 @@ extern int dot_symbols;
 #undef  ASM_APP_OFF
 #define ASM_APP_OFF "#NO_APP\n"
 
-/* PowerPC no-op instruction.  */
-#undef  RS6000_CALL_GLUE
-#define RS6000_CALL_GLUE (TARGET_64BIT ? "nop" : "cror 31,31,31")
-
 /* Function profiling bits */
 #undef  RS6000_MCOUNT
 #define RS6000_MCOUNT "_mcount"
index 7c516eb56a8fa54227c536305070025ad241afa7..8c32301a71d09ef4ccc04ad216dbbaae6ccbd1df 100644 (file)
@@ -417,10 +417,6 @@ extern int dot_symbols;
 #undef  ASM_APP_OFF
 #define ASM_APP_OFF "#NO_APP\n"
 
-/* PowerPC no-op instruction.  */
-#undef  RS6000_CALL_GLUE
-#define RS6000_CALL_GLUE (TARGET_64BIT ? "nop" : "cror 31,31,31")
-
 #undef  RS6000_MCOUNT
 #define RS6000_MCOUNT "_mcount"
 
index ac7e6f2190fb7b070e80f0c425ea4ae36fbd243c..c125019e8213d95b1d18d13db2594963c9c4a509 100644 (file)
@@ -14628,12 +14628,6 @@ print_operand (FILE *file, rtx x, int code)
 
   switch (code)
     {
-    case '.':
-      /* Write out an instruction after the call which may be replaced
-        with glue code by the loader.  This depends on the AIX version.  */
-      asm_fprintf (file, RS6000_CALL_GLUE);
-      return;
-
       /* %a is output_address.  */
 
     case 'A':
index 4e33611baf427d2c1df710fe578e781029689e3d..b968802d9fb846ba9bdf0ab5264dcdaaa7c038b4 100644 (file)
@@ -2186,10 +2186,6 @@ extern char rs6000_reg_names[][8];       /* register names (0 vs. %r0).  */
   {"vs56", 101},{"vs57", 102},{"vs58", 103},{"vs59", 104},      \
   {"vs60", 105},{"vs61", 106},{"vs62", 107},{"vs63", 108} }
 
-/* Text to write out after a CALL that may be replaced by glue code by
-   the loader.  This depends on the AIX version.  */
-#define RS6000_CALL_GLUE "cror 31,31,31"
-
 /* This is how to output an element of a case-vector that is relative.  */
 
 #define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL) \
index d5ffd81b068aead248cc45fcde93f92af40b6a97..5dae300970cd91393613ff69bf5d95d251311ce4 100644 (file)
   "HAVE_AS_TLS && DEFAULT_ABI == ABI_AIX"
 {
   if (TARGET_CMODEL != CMODEL_SMALL)
-    return "addis %0,%1,%2@got@tlsgd@ha\;addi %0,%0,%2@got@tlsgd@l\;bl %z3\;%.";
+    return "addis %0,%1,%2@got@tlsgd@ha\;addi %0,%0,%2@got@tlsgd@l\;"
+          "bl %z3\;nop";
   else
-    return "addi %0,%1,%2@got@tlsgd\;bl %z3\;%.";
+    return "addi %0,%1,%2@got@tlsgd\;bl %z3\;nop";
 }
   "&& TARGET_TLS_MARKERS"
   [(set (match_dup 0)
                   UNSPEC_TLSGD)
    (clobber (reg:SI LR_REGNO))]
   "HAVE_AS_TLS && DEFAULT_ABI == ABI_AIX && TARGET_TLS_MARKERS"
-  "bl %z1(%3@tlsgd)\;%."
+  "bl %z1(%3@tlsgd)\;nop"
   [(set_attr "type" "branch")
    (set_attr "length" "8")])
 
   "HAVE_AS_TLS && DEFAULT_ABI == ABI_AIX"
 {
   if (TARGET_CMODEL != CMODEL_SMALL)
-    return "addis %0,%1,%&@got@tlsld@ha\;addi %0,%0,%&@got@tlsld@l\;bl %z2\;%.";
+    return "addis %0,%1,%&@got@tlsld@ha\;addi %0,%0,%&@got@tlsld@l\;"
+          "bl %z2\;nop";
   else
-    return "addi %0,%1,%&@got@tlsld\;bl %z2\;%.";
+    return "addi %0,%1,%&@got@tlsld\;bl %z2\;nop";
 }
   "&& TARGET_TLS_MARKERS"
   [(set (match_dup 0)
    (unspec:TLSmode [(const_int 0)] UNSPEC_TLSLD)
    (clobber (reg:SI LR_REGNO))]
   "HAVE_AS_TLS && DEFAULT_ABI == ABI_AIX && TARGET_TLS_MARKERS"
-  "bl %z1(%&@tlsld)\;%."
+  "bl %z1(%&@tlsld)\;nop"
   [(set_attr "type" "branch")
    (set_attr "length" "8")])
 
   "TARGET_32BIT
    && DEFAULT_ABI == ABI_AIX
    && (INTVAL (operands[2]) & CALL_LONG) == 0"
-  "bl %z0\;%."
+  "bl %z0\;nop"
   [(set_attr "type" "branch")
    (set_attr "length" "8")])
    
   "TARGET_64BIT
    && DEFAULT_ABI == ABI_AIX
    && (INTVAL (operands[2]) & CALL_LONG) == 0"
-  "bl %z0\;%."
+  "bl %z0\;nop"
   [(set_attr "type" "branch")
    (set_attr "length" "8")])
 
   "TARGET_32BIT
    && DEFAULT_ABI == ABI_AIX
    && (INTVAL (operands[3]) & CALL_LONG) == 0"
-  "bl %z1\;%."
+  "bl %z1\;nop"
   [(set_attr "type" "branch")
    (set_attr "length" "8")])
 
   "TARGET_64BIT
    && DEFAULT_ABI == ABI_AIX
    && (INTVAL (operands[3]) & CALL_LONG) == 0"
-  "bl %z1\;%."
+  "bl %z1\;nop"
   [(set_attr "type" "branch")
    (set_attr "length" "8")])