hanchenye-llvm-project/llvm/lib/Target/Mips
Vasileios Kalintiris ef96a8ecd6 [mips] Enable arithmetic and binary operations for the i128 data type.
Summary:
This patch adds support for some operations that were missing from
128-bit integer types (add/sub/mul/sdiv/udiv... etc.). With these
changes we can support the __int128_t and __uint128_t data types
from C/C++.

Depends on D7125

Reviewers: dsanders

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D7143

llvm-svn: 227089
2015-01-26 12:33:22 +00:00
..
AsmParser [mips] Add new error message and improve testing for parsing the .module directive. 2015-01-23 10:40:19 +00:00
Disassembler [mips] fix spelling of 'disassembler' 2015-01-23 21:00:08 +00:00
InstPrinter [mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B 2015-01-21 12:39:30 +00:00
MCTargetDesc Correct the header guard for MipsABIInfo.h. 2015-01-26 08:19:53 +00:00
TargetInfo
CMakeLists.txt MipsABIInfo class is used in different libraries. Moving the files to MCTargetDesc folder(LLVMMipsDesc library) prevents linkage errors. There are no functional changes. 2014-12-17 11:49:56 +00:00
LLVMBuild.txt
MSA.txt Revert r221048 - Test commit 2014-11-01 16:08:03 +00:00
Makefile Reinstate "Nuke the old JIT." 2014-09-02 22:28:02 +00:00
MicroMipsInstrFPU.td [mips][microMIPS] Fix opcodes of MFHC1 and MTHC1 instructions. 2014-11-19 13:37:51 +00:00
MicroMipsInstrFormats.td [mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B 2015-01-21 12:39:30 +00:00
MicroMipsInstrInfo.td [mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B 2015-01-21 12:39:30 +00:00
Mips.h Reinstate "Nuke the old JIT." 2014-09-02 22:28:02 +00:00
Mips.td [mips] Replace MipsABIEnum with a MipsABIInfo class. 2014-10-24 16:15:27 +00:00
Mips16FrameLowering.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
Mips16FrameLowering.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Mips16HardFloat.cpp Rewrite the Mips16HardFloat pass to avoid using the Subtarget. 2015-01-06 01:12:30 +00:00
Mips16HardFloat.h Rewrite the Mips16HardFloat pass to avoid using the Subtarget. 2015-01-06 01:12:30 +00:00
Mips16HardFloatInfo.cpp
Mips16HardFloatInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Mips16ISelDAGToDAG.cpp Remove a bunch of unnecessary typecasts to 'const TargetRegisterClass *' 2014-11-21 05:58:21 +00:00
Mips16ISelDAGToDAG.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Mips16ISelLowering.cpp [mips] Fix 'jumpy' debug line info around calls. 2015-01-24 14:35:11 +00:00
Mips16ISelLowering.h Re-commit r221056 and others with fix, "[mips] Move F128 argument handling into MipsCCState as we did for returns. NFC." 2014-11-02 16:09:29 +00:00
Mips16InstrFormats.td Fix a whole bunch of binary literals which were the wrong size. All were being silently zero extended to the correct width. 2014-08-07 05:46:54 +00:00
Mips16InstrInfo.cpp Replace several 'assert(false' with 'llvm_unreachable' or fold a condition into the assert. 2015-01-05 10:15:49 +00:00
Mips16InstrInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Mips16InstrInfo.td Replace neverHasSideEffects=1 with hasSideEffects=0 in all .td files. 2014-11-26 00:46:26 +00:00
Mips16RegisterInfo.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
Mips16RegisterInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Mips32r6InstrFormats.td
Mips32r6InstrInfo.td When disassembler meets compact jump instructions for r6 it crashes as the access to operands array is out of range. This patch removes dedicated decoder method that wrongly handles decoding of these instructions. 2015-01-26 10:33:43 +00:00
Mips64InstrInfo.td [mips] Enable arithmetic and binary operations for the i128 data type. 2015-01-26 12:33:22 +00:00
Mips64r6InstrInfo.td
MipsAnalyzeImmediate.cpp Remove unnecessary copying or replace it with moves in a bunch of places. 2014-10-04 16:55:56 +00:00
MipsAnalyzeImmediate.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsAsmPrinter.cpp [mips] Add comment which explains why we need to change the assembler options before and after inline asm blocks. NFC. 2015-01-09 15:00:30 +00:00
MipsAsmPrinter.h std::unique_ptrify the MCStreamer argument to createAsmPrinter 2015-01-18 20:29:04 +00:00
MipsCCState.cpp [mips] Fix sret arguments for N32/N64 which were accidentally broken in r221534. 2014-11-10 15:57:53 +00:00
MipsCCState.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
MipsCallingConv.td [mips] Add Mips-specific CCIf's for accessing the MipsCCState. NFC. 2014-12-08 15:40:09 +00:00
MipsCondMov.td [mips] Enable code generation for MIPS-III. 2014-12-12 15:16:46 +00:00
MipsConstantIslandPass.cpp [mips] Replace MipsABIEnum with a MipsABIInfo class. 2014-10-24 16:15:27 +00:00
MipsDSPInstrFormats.td
MipsDSPInstrInfo.td
MipsDelaySlotFiller.cpp [mips][microMIPS] Fix issue with 16b instructions in jr instruction delay slot 2015-01-13 15:59:17 +00:00
MipsFastISel.cpp [PM] Move TargetLibraryInfo into the Analysis library. 2015-01-15 02:16:27 +00:00
MipsFrameLowering.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
MipsFrameLowering.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsISelDAGToDAG.cpp
MipsISelDAGToDAG.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsISelLowering.cpp [mips] Enable arithmetic and binary operations for the i128 data type. 2015-01-26 12:33:22 +00:00
MipsISelLowering.h [mips] Fix 'jumpy' debug line info around calls. 2015-01-24 14:35:11 +00:00
MipsInstrFPU.td [mips] Move COP2 & COP3 load/store instructions from MipsInstrFPU.td to MipsInstrInfo.td. NFC. 2014-11-04 21:45:16 +00:00
MipsInstrFormats.td [mips] Add octeon branch instructions bbit0/bbit032/bbit1/bbit132 2015-01-20 16:10:51 +00:00
MipsInstrInfo.cpp Update include - this class doesn't use the target machine, but 2015-01-08 18:18:54 +00:00
MipsInstrInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsInstrInfo.td [mips][microMIPS] MicroMIPS 16-bit unconditional branch instruction B 2015-01-21 12:39:30 +00:00
MipsLongBranch.cpp [mips][microMIPS] Implement BEQZ16 and BNEZ16 instructions 2015-01-12 12:03:34 +00:00
MipsMCInstLower.cpp
MipsMCInstLower.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsMSAInstrFormats.td
MipsMSAInstrInfo.td [mips] Rename MipsAsmParser functions to conform to the LLVM Coding Standards. No functional changes. 2014-09-04 13:23:44 +00:00
MipsMachineFunction.cpp Remove a bunch of unnecessary typecasts to 'const TargetRegisterClass *' 2014-11-21 05:58:21 +00:00
MipsMachineFunction.h Fix some cases where StringRef was being passed by const reference. Remove const from some other StringRefs since its implicitly const already. 2014-08-30 16:48:02 +00:00
MipsModuleISelDAGToDAG.cpp
MipsModuleISelDAGToDAG.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsOptimizePICCall.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
MipsOptionRecord.h Make some helpers static or move into the llvm namespace. 2014-09-03 21:04:12 +00:00
MipsOs16.cpp
MipsOs16.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsRegisterInfo.cpp [mips] Initial implementation of -mabicalls/-mno-abicalls. 2014-08-08 10:01:29 +00:00
MipsRegisterInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsRegisterInfo.td [mips][microMIPS] Implement disassembler support for 16-bit instructions LBU16, LHU16, LW16, SB16, SH16 and SW16 2014-11-26 18:56:38 +00:00
MipsSEFrameLowering.cpp [mips] Account for endianess when expanding BuildPairF64/ExtractElementF64 nodes. 2014-10-16 15:41:51 +00:00
MipsSEFrameLowering.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsSEISelDAGToDAG.cpp [mips] Enable arithmetic and binary operations for the i128 data type. 2015-01-26 12:33:22 +00:00
MipsSEISelDAGToDAG.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsSEISelLowering.cpp [mips] Enable arithmetic and binary operations for the i128 data type. 2015-01-26 12:33:22 +00:00
MipsSEISelLowering.h Re-commit r221056 and others with fix, "[mips] Move F128 argument handling into MipsCCState as we did for returns. NFC." 2014-11-02 16:09:29 +00:00
MipsSEInstrInfo.cpp Fix a couple of odd formatting issues. 2015-01-08 18:18:53 +00:00
MipsSEInstrInfo.h Remove dead variable. 2015-01-06 01:12:42 +00:00
MipsSERegisterInfo.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
MipsSERegisterInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsSchedule.td
MipsSelectionDAGInfo.cpp
MipsSelectionDAGInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MipsSubtarget.cpp Make the TargetMachine in MipsSubtarget a reference rather 2015-01-08 18:18:57 +00:00
MipsSubtarget.h [mips] Remove a redundant semicolon and add space before curly brackets. NFC. 2015-01-16 10:45:15 +00:00
MipsTargetMachine.cpp Make the TargetMachine in MipsSubtarget a reference rather 2015-01-08 18:18:57 +00:00
MipsTargetMachine.h Rewrite the Mips16HardFloat pass to avoid using the Subtarget. 2015-01-06 01:12:30 +00:00
MipsTargetObjectFile.cpp [mips] Add the following MIPS options that control gp-relative addressing of 2014-11-06 13:20:12 +00:00
MipsTargetObjectFile.h [mips] Add the following MIPS options that control gp-relative addressing of 2014-11-06 13:20:12 +00:00
MipsTargetStreamer.h [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00