llvm-project/llvm/lib/Transforms
Julian Lettner 29ac3a5b82 [SanitizerCoverage] Clang crashes if user declares `__sancov_lowest_stack` variable
Summary:
If the user declares or defines `__sancov_lowest_stack` with an
unexpected type, then `getOrInsertGlobal` inserts a bitcast and the
following cast fails:
```
Constant *SanCovLowestStackConstant =
       M.getOrInsertGlobal(SanCovLowestStackName, IntptrTy);
SanCovLowestStack = cast<GlobalVariable>(SanCovLowestStackConstant);
```

This variable is a SanitizerCoverage implementation detail and the user
should generally never have a need to access it, so we emit an error
now.

rdar://problem/44143130

Reviewers: morehouse

Differential Revision: https://reviews.llvm.org/D57633

llvm-svn: 353100
2019-02-04 22:06:30 +00:00
..
AggressiveInstCombine Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Coroutines [opaque pointer types] Pass value type to LoadInst creation. 2019-02-01 20:44:24 +00:00
Hello Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IPO [opaque pointer types] Pass value type to GetElementPtr creation. 2019-02-01 20:44:47 +00:00
InstCombine [InstCombine] Cleanup the TFE/LWE check in AMDGPU SimplifyDemanded 2019-02-04 21:24:19 +00:00
Instrumentation [SanitizerCoverage] Clang crashes if user declares `__sancov_lowest_stack` variable 2019-02-04 22:06:30 +00:00
ObjCARC [opaque pointer types] Pass function type for CallBase::setCalledFunction. 2019-02-01 20:44:54 +00:00
Scalar [NFC] Make a check in GuardWidening more obvious 2019-02-04 10:41:17 +00:00
Utils [WarnMissedTransforms] Do not warn about already vectorized loops. 2019-02-04 19:55:59 +00:00
Vectorize [opaque pointer types] Pass value type to GetElementPtr creation. 2019-02-01 20:44:47 +00:00
CMakeLists.txt Another try to commit 323321 (aggressive instruction combine). 2018-01-25 12:06:32 +00:00
LLVMBuild.txt Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00