llvm-project/llvm/lib/Target/AMDGPU
Craig Topper d0af7e8ab8 [SelectionDAG] Use KnownBits struct in DAG's computeKnownBits and simplifyDemandedBits
This patch replaces the separate APInts for KnownZero/KnownOne with a single KnownBits struct. This is similar to what was done to ValueTracking's version recently.

This is largely a mechanical transformation from KnownZero to Known.Zero.

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

llvm-svn: 301620
2017-04-28 05:31:46 +00:00
..
AsmParser [AMDGPU][MC] Added arg checks for vmcnt, expcnt, lgkmcnt helpers 2017-04-26 17:55:50 +00:00
Disassembler AMDGPU: Fix crash when disassembling VOP3 mac 2017-04-10 17:58:06 +00:00
InstPrinter [AMDGPU][MC] Fix for Bug 28211 + LIT tests 2017-04-07 13:07:13 +00:00
MCTargetDesc AMDGPU: Fix ValueKind code object metadata for images 2017-04-25 20:38:26 +00:00
TargetInfo Move the global variables representing each Target behind accessor function 2016-10-09 23:00:34 +00:00
Utils AMDGPU: Temporarily disable packed inlinable literals (v2f16, v2i16) 2017-04-21 19:45:22 +00:00
AMDGPU.h [AMDGPU] Generate range metadata for workitem id 2017-04-12 20:48:56 +00:00
AMDGPU.td [AMDGPU] DPP: add support for GFX9 2017-04-27 15:42:38 +00:00
AMDGPUAliasAnalysis.cpp [IR] Make getParamAttributes take argument numbers, not ArgNo+1 2017-04-13 23:12:13 +00:00
AMDGPUAliasAnalysis.h AMDGPU/R600: Fix amdgpu alias analysis pass. 2017-03-31 19:26:23 +00:00
AMDGPUAlwaysInlinePass.cpp [AMDGPU] Add GlobalOpt parameter to Always Inliner pass 2017-03-30 20:16:02 +00:00
AMDGPUAnnotateKernelFeatures.cpp [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUAnnotateUniformValues.cpp [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUAsmPrinter.cpp AMDGPU: Don't emit amd_kernel_code_t for callable functions 2017-04-19 19:38:10 +00:00
AMDGPUAsmPrinter.h AMDGPU: Use MachineRegisterInfo to find max used register 2017-04-17 19:48:30 +00:00
AMDGPUCallLowering.cpp [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUCallLowering.h [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUCallingConv.td AMDGPU: Stop using CCAssignToRegWithShadow 2017-04-06 17:37:27 +00:00
AMDGPUCodeGenPrepare.cpp AMDGPU: Cleanup control flow intrinsics 2017-03-17 20:41:45 +00:00
AMDGPUFrameLowering.cpp [AMDGPU] Split R600/SI getFrameIndexReference and emit stack object offsets for SI 2017-03-10 19:39:07 +00:00
AMDGPUFrameLowering.h [AMDGPU] Split R600/SI getFrameIndexReference and emit stack object offsets for SI 2017-03-10 19:39:07 +00:00
AMDGPUGenRegisterBankInfo.def Re-commit AMDGPU/GlobalISel: Add support for simple shaders 2017-01-30 21:56:46 +00:00
AMDGPUISelDAGToDAG.cpp [AMDGPU] Garbage collect dead code. NFCI. 2017-04-26 01:00:52 +00:00
AMDGPUISelLowering.cpp [SelectionDAG] Use KnownBits struct in DAG's computeKnownBits and simplifyDemandedBits 2017-04-28 05:31:46 +00:00
AMDGPUISelLowering.h [SelectionDAG] Use KnownBits struct in DAG's computeKnownBits and simplifyDemandedBits 2017-04-28 05:31:46 +00:00
AMDGPUInstrInfo.cpp [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUInstrInfo.h AMDGPU: Fix crash when disassembling VOP3 mac 2017-04-10 17:58:06 +00:00
AMDGPUInstrInfo.td AMDGPU: Move trap lowering to DAG 2017-04-24 17:49:13 +00:00
AMDGPUInstructionSelector.cpp [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUInstructionSelector.h [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUInstructions.td [AMDGPU][MC] Added check for truncation of SOPK imm operand 2017-04-26 15:34:19 +00:00
AMDGPUIntrinsicInfo.cpp Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
AMDGPUIntrinsicInfo.h
AMDGPUIntrinsics.td AMDGPU: Remove legacy bfe intrinsics 2017-04-03 18:08:08 +00:00
AMDGPULegalizerInfo.cpp Re-commit AMDGPU/GlobalISel: Add support for simple shaders 2017-01-30 21:56:46 +00:00
AMDGPULegalizerInfo.h Re-commit AMDGPU/GlobalISel: Add support for simple shaders 2017-01-30 21:56:46 +00:00
AMDGPULowerIntrinsics.cpp [AMDGPU] Generate range metadata for workitem id 2017-04-12 20:48:56 +00:00
AMDGPUMCInstLower.cpp [AMDGPU] Handle SI_MASKED_UNREACHABLE in instruction emitter 2017-04-21 19:32:02 +00:00
AMDGPUMCInstLower.h Reapply "AMDGPU: Support using tablegened MC pseudo expansions" 2016-10-06 17:19:11 +00:00
AMDGPUMachineFunction.cpp AMDGPU: Rename isKernel 2017-03-30 23:58:04 +00:00
AMDGPUMachineFunction.h AMDGPU: Rename isKernel 2017-03-30 23:58:04 +00:00
AMDGPUOpenCLImageTypeLoweringPass.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
AMDGPUPTNote.h [AMDGPU] Restructure code object metadata creation 2017-03-22 22:32:22 +00:00
AMDGPUPromoteAlloca.cpp [AMDGPU] Generate range metadata for workitem id 2017-04-12 20:48:56 +00:00
AMDGPURegisterBankInfo.cpp AMDGPU: Fix release build broken by r293551 2017-01-30 22:02:58 +00:00
AMDGPURegisterBankInfo.h Re-commit AMDGPU/GlobalISel: Add support for simple shaders 2017-01-30 21:56:46 +00:00
AMDGPURegisterBanks.td Re-commit AMDGPU/GlobalISel: Add support for simple shaders 2017-01-30 21:56:46 +00:00
AMDGPURegisterInfo.cpp
AMDGPURegisterInfo.h AMDGPU: Prune unecessary include 2017-04-11 22:29:16 +00:00
AMDGPURegisterInfo.td
AMDGPUSubtarget.cpp [AMDGPU] Generate range metadata for workitem id 2017-04-12 20:48:56 +00:00
AMDGPUSubtarget.h AMDGPU: Change stack alignment 2017-04-17 19:48:24 +00:00
AMDGPUTargetMachine.cpp [AMDGPU] Generate range metadata for workitem id 2017-04-12 20:48:56 +00:00
AMDGPUTargetMachine.h [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUTargetObjectFile.cpp [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUTargetObjectFile.h [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUTargetTransformInfo.cpp AMDGPU: Change DivergenceAnalysis for function arguments 2017-04-19 17:42:34 +00:00
AMDGPUTargetTransformInfo.h [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUUnifyDivergentExitNodes.cpp AMDGPU: Unify divergent function exits. 2017-03-24 19:52:05 +00:00
AMDGPUUnifyMetadata.cpp [AMDGPU] Turn AMDGPUUnifyMetadata back into module pass 2017-01-27 16:38:10 +00:00
AMDILCFGStructurizer.cpp Remove unused functions. Remove static qualifier from functions in header files. NFC. 2017-04-11 14:55:32 +00:00
AMDKernelCodeT.h
BUFInstructions.td AMDGPU: Select scratch mubuf offsets when pointer is a constant 2017-04-24 19:40:59 +00:00
CIInstructions.td [AMDGPU] Refactor VOP1 and VOP2 instruction TD definitions 2016-09-23 09:08:07 +00:00
CMakeLists.txt [AMDGPU] Add a new pass to insert waitcnts. Leave under an option for testing. 2017-04-12 03:25:12 +00:00
CaymanInstructions.td AMDGPU: Select mulhi 24-bit instructions 2016-08-27 01:32:27 +00:00
DSInstructions.td Revert earlier change. ds permute operations affect lgkm counter. 2017-04-19 23:39:19 +00:00
EvergreenInstructions.td AMDGPU: Fix unnecessary ands when packing f16 vectors 2017-03-15 19:04:26 +00:00
FLATInstructions.td [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
GCNHazardRecognizer.cpp AMDGPU: Fix broken condition in hazard recognizer 2017-03-17 21:36:28 +00:00
GCNHazardRecognizer.h AMDGPU: Fix broken condition in hazard recognizer 2017-03-17 21:36:28 +00:00
GCNIterativeScheduler.cpp [AMDGPU] Iterative scheduling infrastructure + minimal registry scheduler 2017-03-21 13:15:46 +00:00
GCNIterativeScheduler.h [AMDGPU] Iterative scheduling infrastructure + minimal registry scheduler 2017-03-21 13:15:46 +00:00
GCNMinRegStrategy.cpp [AMDGPU] Iterative scheduling infrastructure + minimal registry scheduler 2017-03-21 13:15:46 +00:00
GCNRegPressure.cpp Move size and alignment information of regclass to TargetRegisterInfo 2017-04-24 18:55:33 +00:00
GCNRegPressure.h [AMDGPU] Iterative scheduling infrastructure + minimal registry scheduler 2017-03-21 13:15:46 +00:00
GCNSchedStrategy.cpp AMDGPU: Fix assert in scheduler 2017-04-27 03:22:44 +00:00
GCNSchedStrategy.h [AMDGPU] Fix recorded region boundaries in max-occupancy scheduler 2017-03-28 21:48:54 +00:00
LLVMBuild.txt AMDGPU: Add GlobalISel to required_libraries. 2017-01-28 18:13:08 +00:00
MIMGInstructions.td AMDGPU: Remove legacy image intrinsics 2017-04-04 16:34:35 +00:00
Processors.td AMDGPU: Merge initial gfx9 support 2017-02-18 18:29:53 +00:00
R600ClauseMergePass.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
R600ControlFlowFinalizer.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
R600Defines.h
R600EmitClauseMarkers.cpp AMDGPU/R600: Fix ALU clause markers use detection 2017-03-06 20:10:05 +00:00
R600ExpandSpecialInstrs.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
R600FrameLowering.cpp [AMDGPU] Split R600/SI getFrameIndexReference and emit stack object offsets for SI 2017-03-10 19:39:07 +00:00
R600FrameLowering.h [AMDGPU] Split R600/SI getFrameIndexReference and emit stack object offsets for SI 2017-03-10 19:39:07 +00:00
R600ISelLowering.cpp AMDGPU: Refactor argument lowering 2017-04-11 22:29:24 +00:00
R600ISelLowering.h
R600InstrFormats.td AMDGPU/R600: Convert buffer id to VTX_READ input 2016-08-15 21:38:30 +00:00
R600InstrInfo.cpp Cyle -> Cycle; NFCI 2017-03-15 15:37:42 +00:00
R600InstrInfo.h Cyle -> Cycle; NFCI 2017-03-15 15:37:42 +00:00
R600Instructions.td [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
R600Intrinsics.td
R600MachineFunctionInfo.cpp
R600MachineFunctionInfo.h
R600MachineScheduler.cpp
R600MachineScheduler.h [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
R600OptimizeVectorRegisters.cpp [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-12 22:23:53 +00:00
R600Packetizer.cpp Fix spelling mistakes in AMDGPU target comments. NFC. 2016-11-18 11:04:02 +00:00
R600RegisterInfo.cpp
R600RegisterInfo.h
R600RegisterInfo.td
R600Schedule.td
R700Instructions.td
SIAnnotateControlFlow.cpp Reverts commit r301424, r301425 and r301426 2017-04-26 16:37:05 +00:00
SIDebuggerInsertNops.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
SIDefines.h AMDGPU/GFX9: Fix shared and private aperture queries 2017-04-06 23:02:33 +00:00
SIFixControlFlowLiveIntervals.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
SIFixSGPRCopies.cpp [AMDGPU] Merge M0 initializations 2017-04-24 19:37:54 +00:00
SIFixVGPRCopies.cpp [AMDGPU] Add VGPR copies post regalloc fix pass 2017-01-24 17:46:17 +00:00
SIFoldOperands.cpp [AMDGPU] SDWA Peephole: improve search for immediates in SDWA patterns 2017-03-31 11:42:43 +00:00
SIFrameLowering.cpp AMDGPU: Shift down reserved SP register like scratch wave offset 2017-04-25 23:40:57 +00:00
SIFrameLowering.h AMDGPU: Shift down reserved SP register like scratch wave offset 2017-04-25 23:40:57 +00:00
SIISelLowering.cpp [SelectionDAG] Use KnownBits struct in DAG's computeKnownBits and simplifyDemandedBits 2017-04-28 05:31:46 +00:00
SIISelLowering.h AMDGPU: Fix invalid copies when copying i1 to phys reg 2017-04-12 21:58:23 +00:00
SIInsertSkips.cpp AMDGPU: Rename SI_RETURN 2017-03-21 22:18:10 +00:00
SIInsertWaitcnts.cpp Move size and alignment information of regclass to TargetRegisterInfo 2017-04-24 18:55:33 +00:00
SIInsertWaits.cpp Move size and alignment information of regclass to TargetRegisterInfo 2017-04-24 18:55:33 +00:00
SIInstrFormats.td AMDGPU: Unify divergent function exits. 2017-03-24 19:52:05 +00:00
SIInstrInfo.cpp Move size and alignment information of regclass to TargetRegisterInfo 2017-04-24 18:55:33 +00:00
SIInstrInfo.h Move size and alignment information of regclass to TargetRegisterInfo 2017-04-24 18:55:33 +00:00
SIInstrInfo.td AMDGPU: Clean up VOP3NoMods pattern 2017-04-25 21:17:38 +00:00
SIInstructions.td AMDGPU: Clean up VOP3NoMods pattern 2017-04-25 21:17:38 +00:00
SIIntrinsics.td AMDGPU: Remove legacy export intrinsic 2017-04-04 16:34:39 +00:00
SILoadStoreOptimizer.cpp [AMDGPU] added SIInstrInfo::getAddNoCarry() helper 2017-04-14 00:33:44 +00:00
SILowerControlFlow.cpp [AMDGPU] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-20 17:52:16 +00:00
SILowerI1Copies.cpp [CodeGen] Rename MachineInstrBuilder::addOperand. NFC 2017-01-13 09:58:52 +00:00
SIMachineFunctionInfo.cpp AMDGPU: Add StackPtr and FramePtr registers to MFI 2017-04-24 18:05:16 +00:00
SIMachineFunctionInfo.h AMDGPU: Add StackPtr and FramePtr registers to MFI 2017-04-24 18:05:16 +00:00
SIMachineScheduler.cpp [AMDGPU] Update SI scheduler colorHighLatenciesGroups 2017-03-28 07:19:48 +00:00
SIMachineScheduler.h [AMDGPU] Update SI scheduler colorHighLatenciesGroups 2017-03-28 07:19:48 +00:00
SIOptimizeExecMasking.cpp AMDGPU: Fix use-after-free in SIOptimizeExecMasking 2016-10-07 08:40:14 +00:00
SIPeepholeSDWA.cpp [AMDGPU] SDWA: make pass global 2017-04-12 09:36:05 +00:00
SIRegisterInfo.cpp [AMDGPU] Merge M0 initializations 2017-04-24 19:37:54 +00:00
SIRegisterInfo.h Revert "Correct register pressure calculation in presence of subregs" 2017-02-24 21:56:16 +00:00
SIRegisterInfo.td AMDGPU: Fix not including v2i16/v2f16 in register class 2017-03-21 16:42:50 +00:00
SISchedule.td AMDGPU: Implement early ifcvt target hooks. 2017-01-25 04:25:02 +00:00
SIShrinkInstructions.cpp [CodeGen] Rename MachineInstrBuilder::addOperand. NFC 2017-01-13 09:58:52 +00:00
SITypeRewriter.cpp Use StringRef in Pass/PassManager APIs (NFC) 2016-10-01 02:56:57 +00:00
SIWholeQuadMode.cpp [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
SMInstructions.td [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
SOPInstructions.td [AMDGPU][MC] Added check for truncation of SOPK imm operand 2017-04-26 15:34:19 +00:00
VIInstrFormats.td [AMDGPU] Refactor VOP1 and VOP2 instruction TD definitions 2016-09-23 09:08:07 +00:00
VIInstructions.td AMDGPU: Add VI i16 support 2016-11-10 16:02:37 +00:00
VOP1Instructions.td [AMDGPU][MC] Added support for several VI-specific opcodes (s_wakeup, etc) 2017-04-12 17:10:07 +00:00
VOP2Instructions.td AMDGPU: Fix crash when disassembling VOP3 mac 2017-04-10 17:58:06 +00:00
VOP3Instructions.td [AMDGPU][MC] Added support for several VI-specific opcodes (s_wakeup, etc) 2017-04-12 17:10:07 +00:00
VOP3PInstructions.td AMDGPU: Support v2i16/v2f16 packed operations 2017-02-27 22:15:25 +00:00
VOPCInstructions.td [AMDGPU][MC] Corrected parsing of v_cmp_class* and v_cmpx_class* 2017-04-12 16:31:18 +00:00
VOPInstructions.td [AMDGPU][MC] Fix for Bug 28207 + LIT tests 2017-03-27 15:57:17 +00:00