summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
Commit message (Expand)AuthorAgeFilesLines
* [X86] Fix uninitialized variable warnings. NFCI.Simon Pilgrim2019-11-041-6/+6
* [X86] X86SpeculativeLoadHardeningPass::canHardenRegister - fix out of bounds ...Simon Pilgrim2019-09-051-2/+5
* Apply llvm-prefer-register-over-unsigned from clang-tidy to LLVMDaniel Sanders2019-08-151-24/+24
* Finish moving TargetRegisterInfo::isVirtualRegister() and friends to llvm::Re...Daniel Sanders2019-08-011-2/+2
* X86: Clean up pass initializationTom Stellard2019-06-131-4/+1
* [X86] Use OR32mi8Locked instead of LOCK_OR32mi8 in emitLockedStackOp.Craig Topper2019-05-151-3/+1
* [X86] Add a test case for idempotent atomic operations with speculative load ...Craig Topper2019-05-111-1/+3
* Factor out redzone ABI checks [NFCI]Philip Reames2019-05-101-1/+1
* [X86] Disable speculative load hardening for operations with an explicit RSP ...Craig Topper2019-05-101-0/+8
* [X86] Merge the different Jcc instructions for each condition code into singl...Craig Topper2019-04-051-2/+2
* [X86] Merge the different CMOV instructions for each condition code into sing...Craig Topper2019-04-051-6/+9
* Update the file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-191-4/+3
* [SLH] Fix a nasty bug in SLH.Chandler Carruth2018-12-051-1/+3
* X86: Consistently declare pass initializers in X86.h; NFCMatthias Braun2018-11-011-6/+0
* Revert r345165 "[X86] Bring back the MOV64r0 pseudo instruction"Craig Topper2018-10-311-2/+8
* [X86] Bring back the MOV64r0 pseudo instructionCraig Topper2018-10-241-8/+2
* llvm::sort(C.begin(), C.end(), ...) -> llvm::sort(C, ...)Fangrui Song2018-09-271-1/+1
* [x86/SLH] Add a real Clang flag and LLVM IR attribute for SpeculativeChandler Carruth2018-09-041-0/+11
* [x86/SLH] Teach SLH to harden against the "ret2spec" attack byChandler Carruth2018-09-041-32/+151
* [x86/SLH] Teach SLH to harden indirect branches and switches withoutChandler Carruth2018-09-041-3/+268
* [x86] Actually initialize the SLH pass with the x86 backend and useChandler Carruth2018-08-161-3/+3
* [x86/SLH] Extract the logic to trace predicate state through calls toChandler Carruth2018-07-261-19/+39
* [x86/SLH] Sink the return hardening into the main block-walk + hardeningChandler Carruth2018-07-251-26/+17
* [x86/SLH] Improve name and comments for the main hardening function.Chandler Carruth2018-07-251-174/+190
* [x86/SLH] Teach the x86 speculative load hardening pass to hardenChandler Carruth2018-07-251-0/+200
* [x86/SLH] Extract the core register hardening logic to a low-levelChandler Carruth2018-07-241-36/+73
* [x86/SLH] Tidy up a comment, using doxygen structure and wording it toChandler Carruth2018-07-241-5/+7
* [x86/SLH] Simplify the code for hardening a loaded value. NFC.Chandler Carruth2018-07-241-20/+15
* [x86/SLH] Remove complex SHRX-based post-load hardening.Chandler Carruth2018-07-241-73/+10
* [x86/SLH] Fix a bug where we would harden tail calls twice -- once asChandler Carruth2018-07-231-1/+5
* [x86/SLH] Rename and comment the main hardening function. NFC.Chandler Carruth2018-07-231-4/+21
* [x86/SLH] Clean up helper naming for return instruction handling andChandler Carruth2018-07-191-4/+26
* [x86/SLH] Major refactoring of SLH implementaiton. There are two bigChandler Carruth2018-07-191-174/+204
* [x86/SLH] Flesh out the data-invariant instruction table a bit based on feedb...Chandler Carruth2018-07-171-7/+37
* [x86/SLH] Completely rework how we sink post-load hardening past dataChandler Carruth2018-07-161-24/+184
* [x86/SLH] Fix a bug where we would try to post-load harden non-GPRs.Chandler Carruth2018-07-161-13/+25
* [x86/SLH] Extract another small helper function, add better comments andChandler Carruth2018-07-161-23/+34
* [x86/SLH] Fix an unused variable warning in release builds afterChandler Carruth2018-07-161-0/+1
* [x86/SLH] Teach speculative load hardening to correctly harden theChandler Carruth2018-07-161-16/+91
* [x86/SLH] Extract one of the bits of logic to its own function. NFC.Chandler Carruth2018-07-151-43/+48
* [x86/SLH] Fix an issue where we wouldn't harden any loads if we foundChandler Carruth2018-07-141-3/+3
* [x86/SLH] Add an assert to catch if we ever end up trying to hardenChandler Carruth2018-07-141-0/+8
* [X86][SLH] Remove PDEP and PEXT from isDataInvariantLoadCraig Topper2018-07-131-4/+0
* [X86][SLH] Add VEX and EVEX conversion instructions to isDataInvariantLoadCraig Topper2018-07-131-13/+19
* [X86][SLH] Regroup the instructions in isDataInvariantLoad a little. NFCCraig Topper2018-07-131-36/+43
* Add parens to silence Wparentheses warning, introduced by 336990Erich Keane2018-07-131-5/+3
* [SLH] Introduce a new pass to do Speculative Load Hardening to mitigateChandler Carruth2018-07-131-0/+1667
OpenPOWER on IntegriCloud