diff options
| author | Hans Wennborg <hans@hanshq.net> | 2018-09-19 09:58:30 +0000 |
|---|---|---|
| committer | Hans Wennborg <hans@hanshq.net> | 2018-09-19 09:58:30 +0000 |
| commit | 4195eb1068d54fcdd3e942815bbde27248e81488 (patch) | |
| tree | 69f8012ce81e3dd4bce334fb19b6601b33361292 /llvm/test/CodeGen/WinCFGuard/cfguard.ll | |
| parent | e2b16389e7cde75996aeba698b9c95adf7e4995e (diff) | |
| download | bcm5719-llvm-4195eb1068d54fcdd3e942815bbde27248e81488.tar.gz bcm5719-llvm-4195eb1068d54fcdd3e942815bbde27248e81488.zip | |
[COFF] Emit @feat.00 on 64-bit and set the CFG bit when emitting guardcf tables
The 0x800 bit in @feat.00 needs to be set in order to make LLD pick up
the .gfid$y table. I believe this is fine to set even if we don't emit
the instrumentation.
We haven't emitted @feat.00 on 64-bit before. I see that MSVC does emit
it, but I'm not entirely sure what the default value should be. I went
with zero since that seems as safe as not emitting the symbol in the
first place.
Differential Revision: https://reviews.llvm.org/D52235
llvm-svn: 342532
Diffstat (limited to 'llvm/test/CodeGen/WinCFGuard/cfguard.ll')
| -rw-r--r-- | llvm/test/CodeGen/WinCFGuard/cfguard.ll | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/WinCFGuard/cfguard.ll b/llvm/test/CodeGen/WinCFGuard/cfguard.ll index b0a71936a84..2ddd3463219 100644 --- a/llvm/test/CodeGen/WinCFGuard/cfguard.ll +++ b/llvm/test/CodeGen/WinCFGuard/cfguard.ll @@ -1,5 +1,7 @@ ; RUN: llc < %s | FileCheck %s +; CHECK: .set @feat.00, 2048 + ; CHECK: .section .gfids$y ; CHECK: .symidx "?address_taken@@YAXXZ" ; CHECK: .symidx "?virt_method@Derived@@UEBAHXZ" |

