llvm-project/llvm/lib/Target/NVPTX
Eli Friedman accc6b5545 LoadInst should store Align, not MaybeAlign.
The fact that loads and stores can have the alignment missing is a
constant source of confusion: code that usually works can break down in
rare cases.  So fix the LoadInst API so the alignment is never missing.

To reduce the number of changes required to make this work, IRBuilder
and certain LoadInst constructors will grab the module's datalayout and
compute the alignment automatically.  This is the same alignment
instcombine would eventually apply anyway; we're just doing it earlier.
There's a minor risk that the way we're retrieving the datalayout
could break out-of-tree code, but I don't think that's likely.

This is the last in a series of patches, so most of the necessary
changes have already been merged.

Differential Revision: https://reviews.llvm.org/D77454
2020-05-14 13:19:21 -07:00
..
MCTargetDesc [NVPTX] Remove unused forward declarations. NFC. 2020-04-23 16:30:44 +01:00
TargetInfo CMake: Make most target symbols hidden by default 2020-01-14 19:46:52 -08:00
CMakeLists.txt
LLVMBuild.txt
ManagedStringPool.h ManagedStringPool - pre-increment iterator. NFC. 2019-11-07 16:56:16 +00:00
NVPTX.h [NVPTX] Remove unused forward declarations. NFC. 2020-04-23 16:30:44 +01:00
NVPTX.td [CUDA] Add partial support for recent CUDA versions. 2020-04-08 11:19:44 -07:00
NVPTXAllocaHoisting.cpp
NVPTXAllocaHoisting.h
NVPTXAsmPrinter.cpp [SVE] Add new VectorType subclasses 2020-04-22 08:59:01 -07:00
NVPTXAsmPrinter.h [Pass] Ensure we don't include PassSupport.h or PassAnalysisSupport.h directly 2020-04-26 12:58:20 +01:00
NVPTXAssignValidGlobalNames.cpp
NVPTXFrameLowering.cpp CodeGen: Use Register in TargetFrameLowering 2020-04-07 17:07:44 -04:00
NVPTXFrameLowering.h [NVPTX] Remove unused forward declarations. NFC. 2020-04-23 16:30:44 +01:00
NVPTXGenericToNVVM.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
NVPTXISelDAGToDAG.cpp [NVPTX] Fixes -Wrange-loop-analysis warnings 2019-12-22 19:27:44 +01:00
NVPTXISelDAGToDAG.h Fix uninitialized variable warning. NFCI. 2019-11-13 14:40:20 +00:00
NVPTXISelLowering.cpp [IR] Replace all uses of CallBase::getCalledValue() with getCalledOperand(). 2020-04-27 22:17:03 -07:00
NVPTXISelLowering.h [CallSite removal][TargetLowering] Replace ImmutableCallSite with CallBase 2020-04-13 13:50:15 -07:00
NVPTXImageOptimizer.cpp [IR] Split out target specific intrinsic enums into separate headers 2019-12-11 18:02:14 -08:00
NVPTXInstrFormats.td
NVPTXInstrInfo.cpp Update spelling of {analyze,insert,remove}Branch in strings and comments 2020-01-21 10:15:38 -06:00
NVPTXInstrInfo.h Use MCRegister in copyPhysReg 2019-11-11 14:42:33 +05:30
NVPTXInstrInfo.td [NVPTX] Restructure shfl instrinsics and add variants that return a predicate. 2019-10-14 16:53:34 +00:00
NVPTXIntrinsics.td [NVPTX] Added llvm.nvvm.mma.m8n8k4.* intrinsics 2019-10-28 13:55:30 -07:00
NVPTXLowerAggrCopies.cpp LoadInst should store Align, not MaybeAlign. 2020-05-14 13:19:21 -07:00
NVPTXLowerAggrCopies.h
NVPTXLowerAlloca.cpp Fix "pointer is null" static analyzer warning. NFCI. 2020-01-15 12:18:11 +00:00
NVPTXLowerArgs.cpp [Alignment][NFC] Remove AllocaInst::setAlignment(unsigned) 2019-09-30 13:34:44 +00:00
NVPTXMCExpr.cpp
NVPTXMCExpr.h
NVPTXMachineFunctionInfo.h
NVPTXPeephole.cpp
NVPTXPrologEpilogPass.cpp CodeGen: Use Register in TargetFrameLowering 2020-04-07 17:07:44 -04:00
NVPTXProxyRegErasure.cpp
NVPTXRegisterInfo.cpp
NVPTXRegisterInfo.h
NVPTXRegisterInfo.td
NVPTXReplaceImageHandles.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
NVPTXSubtarget.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
NVPTXSubtarget.h
NVPTXTargetMachine.cpp [NVPTX, LSV] Move the LSV optimization pass to later when the graph is cleaner 2020-02-13 12:15:38 -08:00
NVPTXTargetMachine.h
NVPTXTargetObjectFile.h
NVPTXTargetTransformInfo.cpp [NFC][CostModel] Add TargetCostKind to relevant APIs 2020-05-05 10:35:54 +01:00
NVPTXTargetTransformInfo.h [NFC][CostModel] Add TargetCostKind to relevant APIs 2020-05-05 10:35:54 +01:00
NVPTXUtilities.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
NVPTXUtilities.h
NVVMIntrRange.cpp [IR] Split out target specific intrinsic enums into separate headers 2019-12-11 18:02:14 -08:00
NVVMReflect.cpp [IR] Split out target specific intrinsic enums into separate headers 2019-12-11 18:02:14 -08:00
cl_common_defines.h