1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/utils/TableGen
Craig Topper 29f992b269 [TableGen][ARM][X86] Detect combining IntrReadMem and IntrWriteMem.
These properties aren't additive. They are closer to ReadOnly and
WriteOnly. The default is ReadWrite. ReadMem cancels the write property and
WriteMem cancels the read property. Combining them leaves neither.

This patch checks that when we process WriteMem, the Mod flag is
still set. And for ReadMem we check that the Ref flag set still set.

I've updated 2 target intrinsics that were combining these properties.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D93571
2020-12-19 14:56:17 -08:00
..
GlobalISel [TableGen] Eliminte source location from CodeInit 2020-11-23 11:30:13 -05:00
AsmMatcherEmitter.cpp [TableGen] Indentation and whitespace fixes in generated code. NFC. 2020-11-06 16:10:57 +00:00
AsmWriterEmitter.cpp [TableGen] Eliminate the 'code' type 2020-12-03 10:19:11 -05:00
AsmWriterInst.cpp [MCInstPrinter] Pass Address parameter to MCOI::OPERAND_PCREL typed operands. NFC 2020-03-26 08:21:15 -07:00
AsmWriterInst.h [MCInstPrinter] Pass Address parameter to MCOI::OPERAND_PCREL typed operands. NFC 2020-03-26 08:21:15 -07:00
Attributes.cpp Sort EnumAttr so it matches Attribute::operator< 2020-04-26 17:00:25 +02:00
CallingConvEmitter.cpp [TableGen] Add frontend/backend phase timing capability. 2020-11-14 10:10:29 -05:00
CMakeLists.txt [openmp] Base of tablegen generated OpenMP common declaration 2020-06-23 10:32:32 -04:00
CodeEmitterGen.cpp [TableGen] Indentation and whitespace fixes in generated code. NFC. 2020-11-06 16:10:57 +00:00
CodeGenDAGPatterns.cpp [SVE] Replace TypeSize comparison operators in llvm/utils/TableGen 2020-10-19 08:21:36 +01:00
CodeGenDAGPatterns.h [TableGen] Delete 11 unused declarations 2020-12-06 13:21:07 -08:00
CodeGenHwModes.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
CodeGenHwModes.h Explicitly include <cassert> when using assert 2020-03-02 22:45:28 +01:00
CodeGenInstruction.cpp [TableGen] Handle (outs variable_ops) 2020-06-04 16:07:33 +03:00
CodeGenInstruction.h Explicitly include <cassert> when using assert 2020-03-02 22:45:28 +01:00
CodeGenIntrinsics.h [IR] Add NoUndef attribute to Intrinsics.td 2020-08-27 02:54:48 +09:00
CodeGenMapTable.cpp [TableGen] Return const std::string& in InstrMap getName()/getFilterClass() methods. NFCI. 2020-12-17 15:23:03 +00:00
CodeGenRegisters.cpp [TableGen] Indentation and whitespace fixes in generated code. NFC. 2020-11-06 16:10:57 +00:00
CodeGenRegisters.h [TableGen] Use llvm::is_contained (NFC) 2020-11-06 14:18:01 -08:00
CodeGenSchedule.cpp [TableGen] Fix D90844 introduced non-determinism due to iteration over a std::map over allocated object pointers 2020-12-18 12:08:16 -08:00
CodeGenSchedule.h [TableGen] Fix D90844 introduced non-determinism due to iteration over a std::map over allocated object pointers 2020-12-18 12:08:16 -08:00
CodeGenTarget.cpp [TableGen][ARM][X86] Detect combining IntrReadMem and IntrWriteMem. 2020-12-19 14:56:17 -08:00
CodeGenTarget.h [TableGen] [CodeGenTarget] Cache the target's instruction namespace. 2020-12-06 11:08:30 -05:00
CTagsEmitter.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DAGISelEmitter.cpp [Timer] Add a command option to enable/disable timer sorting. 2020-11-28 11:43:38 -05:00
DAGISelMatcher.cpp [TableGen] Replace a dyn_cast with isa to avoid an unused variable warning introduced in r355785. NFC 2019-03-11 16:51:37 +00:00
DAGISelMatcher.h [TableGen] [ISel Matcher Emitter] Rework with two passes: one to size, one to emit 2020-11-21 10:59:13 -05:00
DAGISelMatcherEmitter.cpp [TableGen] [ISel Matcher Emitter] Rework with two passes: one to size, one to emit 2020-11-21 10:59:13 -05:00
DAGISelMatcherGen.cpp [TableGen] Indentation and whitespace fixes in generated code. NFC. 2020-11-06 16:10:57 +00:00
DAGISelMatcherOpt.cpp DAGISelMatcherOpt - TGParser::ParseOperation - silence static analyzer cast_or_null<CheckTypeMatcher> null dereference warning. NFCI. 2019-09-26 17:38:47 +00:00
DFAEmitter.cpp [TableGen] Eliminate the 'code' type 2020-12-03 10:19:11 -05:00
DFAEmitter.h DFAEmitter.h - remove unnecessary headers. NFC. 2020-05-08 14:53:10 +01:00
DFAPacketizerEmitter.cpp [TableGen] Indentation and whitespace fixes in generated code. NFC. 2020-11-06 16:10:57 +00:00
DirectiveEmitter.cpp [openmp] Remove clause from OMPKinds.def and use OMP.td info 2020-12-17 14:08:12 -05:00
DisassemblerEmitter.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
ExegesisEmitter.cpp [TableGen] Indentation and whitespace fixes in generated code. NFC. 2020-11-06 16:10:57 +00:00
FastISelEmitter.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
FixedLenDecoderEmitter.cpp [TableGen] Fixed 64-bit filters being sliced to 32 bits in FixedLenDecoderEmitter 2020-12-14 12:42:35 -05:00
GICombinerEmitter.cpp [TableGen] Delete 11 unused declarations 2020-12-06 13:21:07 -08:00
GlobalISelEmitter.cpp [TableGen] Delete 11 unused declarations 2020-12-06 13:21:07 -08:00
InfoByHwMode.cpp [TableGen] Support encoding per-HwMode 2019-09-19 13:39:54 +00:00
InfoByHwMode.h [TableGen] Support encoding per-HwMode 2019-09-19 13:39:54 +00:00
InstrDocsEmitter.cpp Make llvm::StringRef to std::string conversions explicit. 2020-01-28 23:25:25 +01:00
InstrInfoEmitter.cpp [TableGen] Slim down the data structures in xxxGenInstrInfo.inc, step 1 2020-12-16 09:57:43 -05:00
IntrinsicEmitter.cpp [SVE] Replace TypeSize comparison operators in llvm/utils/TableGen 2020-10-19 08:21:36 +01:00
OptEmitter.cpp [TableGen] Add backend to generate command guide for tools using libOption. 2019-11-22 14:10:17 -08:00
OptEmitter.h [TableGen] Add backend to generate command guide for tools using libOption. 2019-11-22 14:10:17 -08:00
OptParserEmitter.cpp [clang][cli] Unify boolean marshalling 2020-12-08 13:47:30 +01:00
OptRSTEmitter.cpp Avoid including FileSystem.h from MemoryBuffer.h 2020-02-29 12:30:23 -08:00
PredicateExpander.cpp [ARM][SchedModels] Convert IsPredicatedPred to MCSchedPredicate 2020-10-19 11:37:54 +03:00
PredicateExpander.h [ARM][SchedModels] Convert IsPredicatedPred to MCSchedPredicate 2020-10-19 11:37:54 +03:00
PseudoLoweringEmitter.cpp [TableGen] Add frontend/backend phase timing capability. 2020-11-14 10:10:29 -05:00
RegisterBankEmitter.cpp [Tablegen] Use llvm::is_contained (NFC) 2020-12-09 23:34:07 -08:00
RegisterInfoEmitter.cpp [TableGen] Add frontend/backend phase timing capability. 2020-11-14 10:10:29 -05:00
RISCVCompressInstEmitter.cpp [TableGen] Eliminate the 'code' type 2020-12-03 10:19:11 -05:00
SDNodeProperties.cpp [tablegen] Add locations to many PrintFatalError() calls 2019-02-12 17:36:57 +00:00
SDNodeProperties.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
SearchableTableEmitter.cpp [TableGen] Eliminate the 'code' type 2020-12-03 10:19:11 -05:00
SequenceToOffsetTable.h [tablegen] Emit string literals instead of char arrays 2020-01-27 18:22:25 +00:00
SubtargetEmitter.cpp [TableGen][SchedModels] Simplify the code. NFC 2020-12-07 11:53:33 +03:00
SubtargetFeatureInfo.cpp [TableGen] Indentation and whitespace fixes in generated code. NFC. 2020-11-06 16:10:57 +00:00
SubtargetFeatureInfo.h SubtargetFeatureInfo.h - remove unnecessary include and forward declarations. NFCI. 2020-07-20 13:39:24 +01:00
TableGen.cpp [TableGen] Add frontend/backend phase timing capability. 2020-11-14 10:10:29 -05:00
TableGenBackends.h [flang][openmp] Check clauses allowed semantic with tablegen generated map 2020-07-11 12:45:12 -04:00
tdtags Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Types.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Types.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
WebAssemblyDisassemblerEmitter.cpp [WebAssembly] Prototype extending multiplication SIMD instructions 2020-10-28 09:38:59 -07:00
WebAssemblyDisassemblerEmitter.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
X86DisassemblerShared.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
X86DisassemblerTables.cpp [X86] Remove MODRM_SPLITREGM from the disassembler tables. 2020-07-03 00:16:20 -07:00
X86DisassemblerTables.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
X86EVEX2VEXTablesEmitter.cpp [X86] Consider isCodeGenOnly in the EVEX2VEX pass to make VMAXPD/PS map to the non-commutable VEX instruction. Use EVEX2VEX override to fix the scalar instructions. 2019-10-01 07:10:09 +00:00
X86FoldTablesEmitter.cpp [X86] Sort the tables before printing in X86FoldTablesEmitter. 2020-10-18 17:39:38 -07:00
X86ModRMFilters.cpp [X86-64] Support Intel AMX instructions 2020-07-02 08:57:04 +08:00
X86ModRMFilters.h [X86-64] Support Intel AMX instructions 2020-07-02 08:57:04 +08:00
X86RecognizableInstr.cpp [X86] Avoid std::string creation in RecognizableInstr constructor. NFCI. 2020-12-18 16:00:41 +00:00
X86RecognizableInstr.h [X86-64] Support Intel AMX instructions 2020-07-02 08:57:04 +08:00