llvm-project/llvm/lib
Nikolay Haustov 2e4c72977c [AMDGPU] Assembler: Simplify handling of optional operands
Resubmit with index problem fixed. Verified with valgrind.

Prepare to support DPP encodings.

For DPP encodings, we want row_mask/bank_mask/bound_ctrl to be optional operands.
However this means that when parsing instruction which has no mnemonic prefix,
we cannot add both default values for VOP3 and for DPP optional operands
to OperandVector - neither instructions would match. So add default values
for optional operands to MCInst during conversion instead.

Mark more operands as IsOptional = 1 in .td files.
Do not add default values for optional operands to OperandVector in AMDGPUAsmParser.
Add default values for optional operands during conversion using new helper addOptionalImmOperand.
Change to cvtVOP3_2_mod to check instruction flag instead of presence of modifiers. In the future, cvtVOP3* functions can be combined into one.
Separate cvtFlat and cvtFlatAtomic.
Fix CNDMASK_B32 definition to have no modifiers.

Review: http://reviews.llvm.org/D17445
llvm-svn: 261856
2016-02-25 10:58:54 +00:00
..
Analysis PM: Implement a basic loop pass manager 2016-02-25 07:23:08 +00:00
AsmParser [IR] Extend cmpxchg to allow pointer type operands 2016-02-19 00:06:41 +00:00
Bitcode [ThinLTO] Add missing breaks when parsing summaries (NFC) 2016-02-24 17:57:28 +00:00
CodeGen [CodeGenPrepare] Remove load-based heuristic 2016-02-25 00:23:27 +00:00
DebugInfo [DebugInfoPDB] Add source / line number accessors for PDB. 2016-02-18 18:47:29 +00:00
ExecutionEngine [Orc] Add stack-realignment code to the i386 resolver function. 2016-02-21 22:50:26 +00:00
Fuzzer [libFuzzer] only read MaxLen bytes from every file in the corpus to speedup loading the corpus 2016-02-18 21:49:10 +00:00
IR IR: Make the X / undef -> undef fold match the comment 2016-02-25 01:02:18 +00:00
IRReader Remove autoconf support 2016-01-26 21:29:08 +00:00
LTO [PM] Port the PostOrderFunctionAttrs pass to the new pass manager and 2016-02-18 11:03:11 +00:00
LibDriver Remove autoconf support 2016-01-26 21:29:08 +00:00
LineEditor Remove autoconf support 2016-01-26 21:29:08 +00:00
Linker Pass a std::unique_ptr to IRMover::move. 2016-02-16 18:50:12 +00:00
MC Add capability to push/pop DFI in MCStreamer. NFC 2016-02-24 22:25:18 +00:00
Object Represent the dynamic table itself with a DynRegionInfo. 2016-02-17 16:48:00 +00:00
Option Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
Passes PM: Implement a basic loop pass manager 2016-02-25 07:23:08 +00:00
ProfileData Add prefix based function layout when profile is available. 2016-02-23 03:39:24 +00:00
Support Assert when trying to seek un-seekable raw_fd_ostream. 2016-02-23 07:17:58 +00:00
TableGen Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
Target [AMDGPU] Assembler: Simplify handling of optional operands 2016-02-25 10:58:54 +00:00
Transforms [asan] Do not instrument globals in the special "LLVM" sections 2016-02-24 22:12:18 +00:00
CMakeLists.txt LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
LLVMBuild.txt Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00