From 59ac9a555ea3a6fde282e135a7dc7546a6e06b5f Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Sat, 9 Feb 2013 10:30:45 +0100 Subject: [PATCH] re PR target/56256 (inline asm with {|} alternatives in it no longer accepted) PR target/56256 * config/rs6000/rs6000.h (ASSEMBLER_DIALECT): Define. * gcc.target/powerpc/pr56256.c: New test. From-SVN: r195913 --- gcc/ChangeLog | 5 +++++ gcc/config/rs6000/rs6000.h | 6 ++++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/powerpc/pr56256.c | 11 +++++++++++ 4 files changed, 27 insertions(+) create mode 100644 gcc/testsuite/gcc.target/powerpc/pr56256.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1b24e789154..33f77fa35b1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2013-02-09 Jakub Jelinek + + PR target/56256 + * config/rs6000/rs6000.h (ASSEMBLER_DIALECT): Define. + 2013-02-08 Vladimir Makarov PR rtl-optimization/56246 diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index b015652d018..b5c79ea6e95 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -356,6 +356,12 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); #define PROCESSOR_DEFAULT PROCESSOR_PPC603 #define PROCESSOR_DEFAULT64 PROCESSOR_RS64A +/* Specify the dialect of assembler to use. Only new mnemonics are supported + starting with GCC 4.8, i.e. just one dialect, but for backwards + compatibility with older inline asm ASSEMBLER_DIALECT needs to be + defined. */ +#define ASSEMBLER_DIALECT 1 + /* Debug support */ #define MASK_DEBUG_STACK 0x01 /* debug stack applications */ #define MASK_DEBUG_ARG 0x02 /* debug argument handling */ diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b95854947d1..557c8fef5d2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2013-02-09 Jakub Jelinek + + PR target/56256 + * gcc.target/powerpc/pr56256.c: New test. + 2013-02-08 Ian Lance Taylor * lib/go.exp: Load timeout.exp. diff --git a/gcc/testsuite/gcc.target/powerpc/pr56256.c b/gcc/testsuite/gcc.target/powerpc/pr56256.c new file mode 100644 index 00000000000..6c9501a8646 --- /dev/null +++ b/gcc/testsuite/gcc.target/powerpc/pr56256.c @@ -0,0 +1,11 @@ +/* PR target/56256 */ +/* { dg-do assemble } */ +/* { dg-options "-O2" } */ + +int +foo (void) +{ + int a; + __asm__ ("{lil|li} %0,%1" : "=r" (a) : "I" (26)); + return a; +} -- 2.30.2