From 926c0c8fb83869c3874cd6dc101287895461de7f Mon Sep 17 00:00:00 2001 From: Iain Sandoe Date: Fri, 2 Aug 2019 14:44:23 +0000 Subject: [PATCH] darwin, x86, backport fix for missing .p2align. 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 Backport from mainline 2019-05-31 Iain Sandoe * config/i386/darwin.h (ASM_OUTPUT_MAX_SKIP_ALIGN): New. From-SVN: r274016 --- gcc/ChangeLog | 7 +++++++ gcc/config/i386/darwin.h | 12 ++++++++++++ 2 files changed, 19 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 79d650fc2249..8b9120ec2847 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2019-08-02 Iain Sandoe + + Backport from mainline + 2019-05-31 Iain Sandoe + + * config/i386/darwin.h (ASM_OUTPUT_MAX_SKIP_ALIGN): New. + 2019-08-02 Iain Sandoe Backport from mainline diff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h index 11284283304e..46fa329f622a 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.47.2