| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
As part of this effort, duplicate and correct the predicates of some
aliases. Also disable code generation of some short form instructions
for FastISel, as it would otherwise reject them.
Reviewers: atanasyan, abeserminji, smaksimovic
Differential Revision: https://reviews.llvm.org/D47075
llvm-svn: 333530
|
|
|
|
|
|
|
|
|
|
| |
Previously the compiler was using the microMIPSR3 variants, incorrectly.
Reviewers: atanasyan, abeserminji, smaksimovic
Differential Revision: https://reviews.llvm.org/D46948
llvm-svn: 332820
|
|
|
|
|
|
|
|
|
|
| |
Correct their availability to their respective ISAs.
Reviewers: atanasyan
Differential Revision: https://reviews.llvm.org/D44209
llvm-svn: 327403
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the 'movep' instruction was defined for microMIPS32r3 and
shared that definition with microMIPS32R6. 'movep' was re-encoded for
microMIPS32r6, so this patch provides the correct encoding.
Secondly, correct the encoding of the 'rs' and 'rt' operands which have
an instruction specific encoding for the registers those operands accept.
Finally, correct the decoding of the 'dst_regs' operand which was extracting
the relevant field from the instruction, but was actually extracting the
field from the alreadly extracted field.
Reviewers: atanasyan
Differential Revision: https://reviews.llvm.org/D39495
llvm-svn: 317475
|
|
|
|
|
|
|
|
|
|
| |
Implement LAPC instruction for mips32r6, mips64r6 and micromips32r6.
Patch by Milos Stojanovic.
Differential Revision: https://reviews.llvm.org/D35984
llvm-svn: 312934
|
|
|
|
|
|
|
|
|
|
|
|
| |
For compatiblity with binutils, define these instructions to take
two registers with a 16bit unsigned immediate. Both of the registers
have to be same for dahi and dati.
Reviewers: dsanders, zoran.jovanovic
Differential Review: https://reviews.llvm.org/D21473
llvm-svn: 284218
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These instructions were only defined for microMIPSR6 previously. Add
definitions for MIPSR6, correct definitions for microMIPSR6, flag these
instructions as having unmodelled side effects (they disable/enable
virtual processors) and add missing disassember tests for microMIPSR6.
Reviewers: vkalintiris
Differential Review: https://reviews.llvm.org/D24291
llvm-svn: 284115
|
|
|
|
|
|
| |
This reverts r281724. Still need dsanders to accept this.
llvm-svn: 281726
|
|
|
|
|
|
|
|
|
|
|
|
| |
For compatiblity with binutils, define these instructions to take
two registers with a 16bit unsigned immediate. Both of the registers
have to be same for dahi and dati.
Reviewers: vkalintiris, dsanders, zoran.jovanovic
Differential Review: https://reviews.llvm.org/D21473
llvm-svn: 281724
|
|
|
|
|
|
|
|
| |
disassembly and add operand checking to existing B<cond>C implementations
Differential Revision: https://reviews.llvm.org/D22667
llvm-svn: 279429
|
|
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D22347
llvm-svn: 277719
|
|
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D19906
llvm-svn: 276397
|
|
|
|
|
|
|
|
| |
SWC2 instructions and add CodeGen support
Differential Revision: http://reviews.llvm.org/D18824
llvm-svn: 275050
|
|
|
|
|
|
|
|
| |
NOR instructions
Differential Revision: http://reviews.llvm.org/D16719
llvm-svn: 272764
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D11798
llvm-svn: 272259
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D18352
llvm-svn: 270030
|
|
|
|
|
|
|
|
| |
CodeGen support
Differential Revision: http://reviews.llvm.org/D15418
llvm-svn: 269883
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D15417
llvm-svn: 269755
|
|
|
|
|
|
| |
This reverts commit r269176 as it caused test-suite failure.
llvm-svn: 269287
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D19713
llvm-svn: 269176
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D10640
llvm-svn: 268896
|
|
|
|
|
|
|
|
| |
tests for LL, SC, SYSCALL, ROTR, ROTRV, LWM32, SWM32 and MOVEP instructions
Differential Revision: http://reviews.llvm.org/D19857
llvm-svn: 268491
|
|
|
|
|
|
|
|
| |
SRAV, SRL and SRLV instructions
Differential Revision: http://reviews.llvm.org/D17989
llvm-svn: 267693
|
|
|
|
|
|
| |
Commit r267137 was the reason for failing tests in LLVM test suite.
llvm-svn: 267419
|
|
|
|
|
|
| |
Commit r266977 was reason for failing LLVM test suite with error message: fatal error: error in backend: Cannot select: t17: i32 = rotr t2, t11 ...
llvm-svn: 267418
|
|
|
|
|
|
| |
Commit r266861 was the reason for failing tests in LLVM test suite.
llvm-svn: 267166
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D19354
llvm-svn: 267137
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D18687
llvm-svn: 267114
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D18855
llvm-svn: 266980
|
|
|
|
|
|
|
|
| |
instructions and add tests for LWM32 and SWM32
Differential Revision: http://reviews.llvm.org/D19150
llvm-svn: 266977
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D14206
llvm-svn: 266873
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D18640
llvm-svn: 266861
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17334
llvm-svn: 265002
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17328
llvm-svn: 264246
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D16849
llvm-svn: 261211
|
|
|
|
|
|
|
|
| |
for EXT and DEXT* instructions
Differential Revision: http://reviews.llvm.org/D15570
llvm-svn: 256152
|
|
|
|
|
|
|
|
|
| |
Commited patch was intended to implement LH, LHE, LHU and LHUE instructions.
After commit test-suite failed with error message in the form of:
fatal error: error in backend: Cannot select: t124: i32,ch = load<LD2[%d](tbaa=<0x94acc48>), sext from i16> t0, t2, undef:i32
For that reason I decided to revert commit r254897 and make new patch which besides implementation and standard regression tests will also have dedicated tests (CodeGen) for the above error.
llvm-svn: 255109
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D9824
llvm-svn: 254897
|
|
|
|
|
|
|
|
| |
SEL.fmt, SELEQZ.fmt, SELNEQZ.fmt and CLASS.fmt
Differential Revision: http://reviews.llvm.org/D13885
llvm-svn: 254405
|
|
|
|
|
|
|
| |
Value of offset operand for microMIPS BALC and BC instructions is currently shifted 2 bits, but it should be 1 bit.
Differential Revision: http://reviews.llvm.org/D14770
llvm-svn: 254296
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D11406
llvm-svn: 252885
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The bug was that the MIPS32R6/MIPS64R6/microMIPS32R6 versions of LSA and DLSA
(unlike the MSA version) failed to account for the off-by-one encoding of the
immediate. The range is actually 1..4 rather than 0..3.
Reviewers: vkalintiris
Subscribers: atanasyan, dsanders, llvm-commits
Differential Revision: http://reviews.llvm.org/D14015
llvm-svn: 252295
|
|
|
|
|
|
|
|
| |
and WAIT instructions
Differential Revision: http://reviews.llvm.org/D12628
llvm-svn: 251510
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D11633
llvm-svn: 250511
|
|
|
|
|
|
|
|
| |
instructions
Differential Revision: http://reviews.llvm.org/D11292#inline-103143
llvm-svn: 250381
|
|
ISA/ASE subdirectories.
llvm-svn: 249384
|