diff options
author | Mike Stump <mrs@apple.com> | 2005-11-04 22:07:10 +0000 |
---|---|---|
committer | Mike Stump <mrs@apple.com> | 2005-11-04 22:07:10 +0000 |
commit | 8bfc5f69462aee2606324dd2a88a4578473ed664 (patch) | |
tree | 3afdf94eda8203f1a2e9042c4b10658f92d874cf | |
parent | 65c80992baf20af94bd3a69840996bb11fe63228 (diff) |
4319887 MS asm: call to named function fails
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/apple-local-200502-branch@106508 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/config/i386/i386.h | 2 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/asm-block-32.C | 13 | ||||
-rw-r--r-- | gcc/testsuite/gcc.apple/asm-block-32.c | 13 |
3 files changed, 28 insertions, 0 deletions
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index d667e5924c8..ad536b4632a 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -3392,6 +3392,8 @@ extern tree x86_canonicalize_operands (const char **, tree, void *); { "xorpd", 2, "xm"}, \ { "xorps", 1, "+x"}, \ { "xorps", 2, "xm"}, + +#define CW_FUNCTION_MODIFIER "P" /* APPLE LOCAL end CW asm blocks */ /* diff --git a/gcc/testsuite/g++.dg/asm-block-32.C b/gcc/testsuite/g++.dg/asm-block-32.C new file mode 100644 index 00000000000..c2bb049c1be --- /dev/null +++ b/gcc/testsuite/g++.dg/asm-block-32.C @@ -0,0 +1,13 @@ +/* APPLE LOCAL file CW asm blocks */ +/* { dg-do assemble { target i?86*-*-darwin* } } */ +/* { dg-options { -fasm-blocks -msse3 } } */ +/* Radar 4319887 */ + +void bar(); + +void foo () { + asm { + call bar + call foo + } +} diff --git a/gcc/testsuite/gcc.apple/asm-block-32.c b/gcc/testsuite/gcc.apple/asm-block-32.c new file mode 100644 index 00000000000..c2bb049c1be --- /dev/null +++ b/gcc/testsuite/gcc.apple/asm-block-32.c @@ -0,0 +1,13 @@ +/* APPLE LOCAL file CW asm blocks */ +/* { dg-do assemble { target i?86*-*-darwin* } } */ +/* { dg-options { -fasm-blocks -msse3 } } */ +/* Radar 4319887 */ + +void bar(); + +void foo () { + asm { + call bar + call foo + } +} |