public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH, Darwin, X86] We have .p2align, so declare its use.
@ 2019-05-31  7:38 Iain Sandoe
  0 siblings, 0 replies; only message in thread
From: Iain Sandoe @ 2019-05-31  7:38 UTC (permalink / raw)
  To: GCC Patches; +Cc: Uros Bizjak

.p2align support is present in all x86 assemblers on released Darwin systems.
This “fixes” most of the remaining alignment-related fails in i386.exp

tested on x86_64-darwin16, x86_64-linux-gnu,

applied to mainline,
thanks
Iain

gcc/

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

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

diff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h
index 1128428330..46fa329f62 100644
--- a/gcc/config/i386/darwin.h
+++ b/gcc/config/i386/darwin.h
@@ -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
-- 
2.17.1


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-05-31  7:30 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-31  7:38 [PATCH, Darwin, X86] We have .p2align, so declare its use Iain Sandoe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).