llvm-project/llvm/lib/Target/RISCV
Fangrui Song e27e3ba9c9 [RISCVAsmParser] Allow a SymbolRef operand to be a complex expression
So that instructions like `lla a5, (0xFF + end) - 4` (supported by GNU as) can
be parsed.

Add a missing test that an operand like `foo + foo` is not allowed.

Reviewed By: jrtc27

Differential Revision: https://reviews.llvm.org/D92293
2020-12-01 16:08:09 -08:00
..
AsmParser [RISCVAsmParser] Allow a SymbolRef operand to be a complex expression 2020-12-01 16:08:09 -08:00
Disassembler llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
MCTargetDesc [AsmWriter] Factor out mnemonic generation to accessible getMnemonic. 2020-11-17 09:47:38 +00:00
TargetInfo llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
Utils [RISCV] Rename RISCVGenSystemOperands.inc to RISCVGenSearchableTables.inc to prepare for more tables. NFC 2020-11-30 20:47:58 -08:00
CMakeLists.txt [RISCV] Rename RISCVGenSystemOperands.inc to RISCVGenSearchableTables.inc to prepare for more tables. NFC 2020-11-30 20:47:58 -08:00
RISCV.h [RISCV] Split the pseudo instruction splitting pass 2020-06-29 14:35:57 +01:00
RISCV.td [RISCV] Remove RV32 HwMode. Use DefaultMode for RV32 2020-11-20 11:16:06 -08:00
RISCVAsmPrinter.cpp [RISCV] Add -mtune support 2020-10-16 13:55:08 +08:00
RISCVCallLowering.cpp
RISCVCallLowering.h
RISCVCallingConv.td
RISCVExpandAtomicPseudoInsts.cpp [RISCV] Fix RISCVInstrInfo::getInstSizeInBytes for atomics pseudos 2020-07-15 10:50:55 +01:00
RISCVExpandPseudoInsts.cpp [RISCV] Fix RISCVInstrInfo::getInstSizeInBytes for atomics pseudos 2020-07-15 10:50:55 +01:00
RISCVFrameLowering.cpp [RISCV] Add GHC calling convention 2020-11-24 22:35:23 +00:00
RISCVFrameLowering.h [SVE] Return StackOffset for TargetFrameLowering::getFrameIndexReference. 2020-11-05 11:02:18 +00:00
RISCVISelDAGToDAG.cpp [RISCV] Add RISCVISD::ROLW/RORW use those for custom legalizing i32 rotl/rotr on RV64IZbb. 2020-11-20 10:25:47 -08:00
RISCVISelDAGToDAG.h [RISCV] Add RISCVISD::ROLW/RORW use those for custom legalizing i32 rotl/rotr on RV64IZbb. 2020-11-20 10:25:47 -08:00
RISCVISelLowering.cpp [RISCV] Combine (GORCI (GORCI x, C2), C1) -> (GORCI x, C1|C2). 2020-11-30 08:42:46 -08:00
RISCVISelLowering.h [RISCV] Add an implementation of isFMAFasterThanFMulAndFAdd 2020-11-25 15:07:34 -08:00
RISCVInstrFormats.td Upgrade MC to v0.9. 2020-08-01 07:42:06 +08:00
RISCVInstrFormatsC.td
RISCVInstrFormatsV.td [RISCV] add the MC layer support of riscv vector Zvamo extension 2020-08-27 14:11:38 +08:00
RISCVInstrInfo.cpp [RISCV] Add MemOperand to the instruction created by storeRegToStackSlot/loadRegFromStackSlot 2020-11-18 19:20:03 -08:00
RISCVInstrInfo.h [RISCV] Don't include CodeGen layer files in MC layer 2020-11-12 07:45:38 -08:00
RISCVInstrInfo.td [RISCV] Add isel pattern to match (i64 (sra (shl X, 32), C)) to SRAIW if C > 32. 2020-11-25 21:57:48 -08:00
RISCVInstrInfoA.td RISCV: Avoid GlobalISel build break in a future patch 2020-07-13 14:01:57 -04:00
RISCVInstrInfoB.td [RISCV] Custom legalize bswap/bitreverse to GREVI with Zbp extension to enable them to combine with other GREVI instructions 2020-11-30 08:30:40 -08:00
RISCVInstrInfoC.td [RISCV] Remove unused PatFrag argument from the tablegen class used for c.beqz/c.bnez. NFC 2020-11-25 20:35:23 -08:00
RISCVInstrInfoD.td [RISCV] Replace sexti32/zexti32 in isel patterns where only one part of their PatFrags can match. NFCI 2020-11-27 11:37:25 -08:00
RISCVInstrInfoF.td [RISCV] Replace sexti32/zexti32 in isel patterns where only one part of their PatFrags can match. NFCI 2020-11-27 11:37:25 -08:00
RISCVInstrInfoM.td [RISCV] Don't remove (and X, 0xffffffff) from inputs when matching RISCVISD::DIVUW/REMUW to 64-bit DIVU/REMU. 2020-11-26 23:15:41 -08:00
RISCVInstrInfoV.td [RISCV] Use register class VR for V instruction operands directly. 2020-11-19 05:59:46 +08:00
RISCVInstructionSelector.cpp RISCV: Avoid GlobalISel build break in a future patch 2020-07-13 14:01:57 -04:00
RISCVLegalizerInfo.cpp
RISCVLegalizerInfo.h
RISCVMCInstLower.cpp Revert "[RISCV] Avoid Splitting MBB in RISCVExpandPseudo" 2020-07-14 11:15:01 +01:00
RISCVMachineFunctionInfo.h [Alignment][NFC] Migrate MachineFrameInfo::CreateStackObject to Align 2020-07-01 07:28:11 +00:00
RISCVMergeBaseOffset.cpp [NFC][RISCV] Simplify pass arg of RISCVMergeBaseOffsetOpt 2020-09-03 20:01:23 +08:00
RISCVRegisterBankInfo.cpp Revert "[TableGen][GlobalISel] Account for HwMode in RegisterBank register sizes" 2020-03-20 11:02:50 +01:00
RISCVRegisterBankInfo.h Revert "[TableGen][GlobalISel] Account for HwMode in RegisterBank register sizes" 2020-03-20 11:02:50 +01:00
RISCVRegisterBanks.td
RISCVRegisterInfo.cpp [RISCV] Add GHC calling convention 2020-11-24 22:35:23 +00:00
RISCVRegisterInfo.h CodeGen: More conversions to use Register 2020-04-07 18:54:36 -04:00
RISCVRegisterInfo.td [RISCV] Remove unused VM register class 2020-11-23 14:17:06 -08:00
RISCVSchedRocket.td [RISCV] Fix formatting (NFC) 2020-09-25 18:15:04 -05:00
RISCVSchedSiFive7.td [RISCV] Use the commercial name for scheduling model (NFC) 2020-10-23 16:33:27 -05:00
RISCVSchedule.td [RISCV] Fix formatting (NFC) 2020-09-25 18:15:04 -05:00
RISCVSubtarget.cpp [RISCV] Add -mtune support 2020-10-16 13:55:08 +08:00
RISCVSubtarget.h [RISCV] Add -mtune support 2020-10-16 13:55:08 +08:00
RISCVSystemOperands.td [RISCV] Enable the use of the old mucounteren name 2020-08-17 13:11:49 +01:00
RISCVTargetMachine.cpp [RISCV] Add -mtune support 2020-10-16 13:55:08 +08:00
RISCVTargetMachine.h
RISCVTargetObjectFile.cpp [Target] Use Align in TargetLoweringObjectFile::getSectionForConstant. 2020-05-21 15:23:29 -07:00
RISCVTargetObjectFile.h [Target] Use Align in TargetLoweringObjectFile::getSectionForConstant. 2020-05-21 15:23:29 -07:00
RISCVTargetTransformInfo.cpp [ARM][TTI] Prevents constants in a min(max) or max(min) pattern from being hoisted when in a loop 2020-09-22 11:54:10 +00:00
RISCVTargetTransformInfo.h [ARM][TTI] Prevents constants in a min(max) or max(min) pattern from being hoisted when in a loop 2020-09-22 11:54:10 +00:00