llvm-project/llvm/lib
Simon Dardis e94fdd125f [mips] Add partial support for R6 in the long branch pass
MIPSR6 introduced several new jump instructions and deprecated
the use of the 'j' instruction. For microMIPS32R6, 'j' was removed
entirely and it only has non delay slot jumps.

This patch adds support for MIPSR6 by using some R6 instructions--
'bc' instead of 'j', 'jic $reg, 0' instead of 'jalr $zero, $reg'--
and modifies the sequences not to use delay slots for R6.

Reviewers: atanasyan

Reviewed By: atanasyan

Subscribers: dschuff, arichardson, llvm-commits

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

llvm-svn: 320703
2017-12-14 14:55:25 +00:00
..
Analysis [ScalarEvolution] Fix base condition in isNormalAddRecPHI. 2017-12-14 14:47:52 +00:00
AsmParser Hardware-assisted AddressSanitizer (llvm part). 2017-12-09 00:21:41 +00:00
BinaryFormat Simplify. 2017-10-19 01:32:18 +00:00
Bitcode Remove redundant includes from lib/Bitcode. 2017-12-13 21:30:45 +00:00
CodeGen Revert "[DAGCombine] Move AND nodes to multiple load leaves" 2017-12-14 14:03:07 +00:00
DebugInfo [CodeView] Teach clang to emit the .debug$H COFF section. 2017-12-13 22:33:58 +00:00
Demangle [ItaniumDemangle] Fix a exponential string copying bug 2017-05-28 23:24:52 +00:00
ExecutionEngine Remove redundant includes from lib/ExecutionEngine. 2017-12-13 21:30:50 +00:00
FuzzMutate Remove redundant includes from various places. 2017-12-13 21:31:03 +00:00
Fuzzer [libFuzzer] Delete llvm/lib/Fuzzer 2017-10-16 20:48:19 +00:00
IR [Verifier] Check that GEP indexes has correct types 2017-12-14 09:33:58 +00:00
IRReader Remove redundant includes from various places. 2017-12-13 21:31:03 +00:00
LTO Remove redundant includes from lib/LTO. 2017-12-13 21:30:53 +00:00
LineEditor
Linker Linker: Create a function declaration when moving a non-prevailing alias of function type. 2017-08-10 01:07:44 +00:00
MC MC/AsmPrinter: Reduce code duplication. 2017-12-14 03:59:24 +00:00
Object Remove redundant includes from lib/Object. 2017-12-13 21:30:55 +00:00
ObjectYAML [CodeView] Teach clang to emit the .debug$H COFF section. 2017-12-13 22:33:58 +00:00
Option Reverting r315590; it did not include changes for llvm-tblgen, which is causing link errors for several people. 2017-10-15 14:32:27 +00:00
Passes Remove redundant includes from various places. 2017-12-13 21:31:03 +00:00
ProfileData Remove redundant includes from lib/ProfileData. 2017-12-13 21:30:57 +00:00
Support Recover some overzealously removed includes. 2017-12-13 22:21:02 +00:00
TableGen [TableGen] Give the option of tolerating duplicate register names 2017-12-07 09:51:55 +00:00
Target [mips] Add partial support for R6 in the long branch pass 2017-12-14 14:55:25 +00:00
Testing Force #define GTEST_LANG_CXX11. 2017-10-27 21:12:28 +00:00
ToolDrivers Remove redundant includes from various places. 2017-12-13 21:31:03 +00:00
Transforms [PM][InstCombine] fixing omission of AliasAnalysis in new-pass-manager's version of InstCombine 2017-12-14 10:36:31 +00:00
WindowsManifest Fix bug 34608 by moving private header out of public header. 2017-09-14 23:01:13 +00:00
XRay [XRay] Use optimistic logging model for FDR mode 2017-11-21 07:16:57 +00:00
CMakeLists.txt Moving libFuzzer from LLVM to compiler-rt. 2017-08-21 23:25:12 +00:00
LLVMBuild.txt Re-apply "Introduce FuzzMutate library" 2017-08-21 22:57:06 +00:00