]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
darwin, x86, backport fix for missing .p2align.
authorIain Sandoe <iain@sandoe.co.uk>
Fri, 2 Aug 2019 14:44:23 +0000 (14:44 +0000)
committerIain Sandoe <iains@gcc.gnu.org>
Fri, 2 Aug 2019 14:44:23 +0000 (14:44 +0000)
This fixes a number of testcases that expect use of
.p2align, which was omitted from the darwin X86 port
(but is available in all assemblers used with that).

2019-08-02  Iain Sandoe  <iain@sandoe.co.uk>

Backport from mainline
2019-05-31  Iain Sandoe  <iain@sandoe.co.uk>

* config/i386/darwin.h (ASM_OUTPUT_MAX_SKIP_ALIGN): New.

From-SVN: r274016

gcc/ChangeLog
gcc/config/i386/darwin.h

index 79d650fc2249e6b381df24c9a57ad2813be9641b..8b9120ec2847ed91fc30d962678ad9aa07123915 100644 (file)
@@ -1,3 +1,10 @@
+2019-08-02  Iain Sandoe  <iain@sandoe.co.uk>
+
+       Backport from mainline
+       2019-05-31  Iain Sandoe  <iain@sandoe.co.uk>
+
+       * config/i386/darwin.h (ASM_OUTPUT_MAX_SKIP_ALIGN): New.
+
 2019-08-02  Iain Sandoe  <iain@sandoe.co.uk>
 
        Backport from mainline
index 11284283304e108ab17fb8e7bae617e710923892..46fa329f622a95fcb909699805edc035af36ff89 100644 (file)
@@ -223,6 +223,18 @@ extern int darwin_emit_branch_islands;
       }                                                                   \
   } while (0)
 
+#ifdef HAVE_GAS_MAX_SKIP_P2ALIGN
+#define ASM_OUTPUT_MAX_SKIP_ALIGN(FILE,LOG,MAX_SKIP)                    \
+  do {                                                                  \
+    if ((LOG) != 0) {                                                   \
+      if ((MAX_SKIP) == 0 || (MAX_SKIP) >= (1 << (LOG)) - 1)            \
+        fprintf ((FILE), "\t.p2align %d\n", (LOG));                     \
+      else                                                              \
+        fprintf ((FILE), "\t.p2align %d,,%d\n", (LOG), (MAX_SKIP));     \
+    }                                                                   \
+  } while (0)
+#endif
+
 /* Darwin x86 assemblers support the .ident directive.  */
 
 #undef TARGET_ASM_OUTPUT_IDENT