diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2018-07-18 00:27:07 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2018-07-18 00:27:07 +0000 |
commit | 14b468bab620b1743435eb8560ff250a949430be (patch) | |
tree | 0aa601e927851b29f2379948bb5116063c3967f3 /clang/test/CodeGen/addrsig.c | |
parent | fc50498ced7f85279b901fce302d01e558c74c7d (diff) | |
download | bcm5719-llvm-14b468bab620b1743435eb8560ff250a949430be.tar.gz bcm5719-llvm-14b468bab620b1743435eb8560ff250a949430be.zip |
Re-land r337333, "Teach Clang to emit address-significance tables.",
which was reverted in r337336.
The problem that required a revert was fixed in r337338.
Also added a missing "REQUIRES: x86-registered-target" to one of
the tests.
Original commit message:
> Teach Clang to emit address-significance tables.
>
> By default, we emit an address-significance table on all ELF
> targets when the integrated assembler is enabled. The emission of an
> address-significance table can be controlled with the -faddrsig and
> -fno-addrsig flags.
>
> Differential Revision: https://reviews.llvm.org/D48155
llvm-svn: 337339
Diffstat (limited to 'clang/test/CodeGen/addrsig.c')
-rw-r--r-- | clang/test/CodeGen/addrsig.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/clang/test/CodeGen/addrsig.c b/clang/test/CodeGen/addrsig.c new file mode 100644 index 00000000000..d7141092bb3 --- /dev/null +++ b/clang/test/CodeGen/addrsig.c @@ -0,0 +1,20 @@ +// REQUIRES: x86-registered-target + +// RUN: %clang_cc1 -triple=x86_64-unknown-linux -S %s -faddrsig -O -o - | FileCheck --check-prefix=ADDRSIG %s +// RUN: %clang_cc1 -triple=x86_64-unknown-linux -S %s -O -o - | FileCheck --check-prefix=NO-ADDRSIG %s + +// ADDRSIG: .addrsig +// ADDRSIG: .addrsig_sym g1 +// ADDRSIG-NOT: .addrsig_sym g2 + +// NO-ADDRSIG-NOT: .addrsig + +extern const int g1[], g2[]; + +const int *f1() { + return g1; +} + +int f2() { + return g2[0]; +} |