| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Permit explicit $fcc<X> operand in c.cond.fmt instruction.
Add c.cond.fmt to the MIPS to microMIPS instruction mapping table.
Check that $fcc1 - $fcc7 are unusable for MIPS-I to MIPS-III for
c.cond.fmt, bc1t, bc1f.
Reviewers: seanbruno, zoran.jovanovic, vkalintiris
Differential Revision: https://reviews.llvm.org/D24510
llvm-svn: 292117
|
| |
|
|
|
|
|
|
|
|
|
| |
Add rsqrt.[ds], recip.[ds] for MIPS. Correct the microMIPS definitions for
architecture support and register usage.
Reviewers: vkalintiris, zoran.jovanoic
Differential Review: https://reviews.llvm.org/D24499
llvm-svn: 283334
|
| |
|
|
|
|
|
| |
This reverts commit r282485 which contain two patches instead of
one.
llvm-svn: 283327
|
| |
|
|
|
|
|
|
|
|
|
| |
Add rsqrt.[ds], recip.[ds] for MIPS. Correct the microMIPS definitions for
architecture support and register usage.
Reviewers: vkalintiris, zoran.jovanoic
Differential Review: https://reviews.llvm.org/D24499
llvm-svn: 282485
|
| |
|
|
|
|
|
| |
This reverts commit r281022. Mips buildbot broke, due to unhandled register
class FCC.
llvm-svn: 281033
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As part of this effort, remove MipsFCmp nodes and use tablegen
patterns rather than custom lowering through C++.
Unexpectedly, this improves codesize for microMIPS as previous floating
point setcc expansions would materialize 0 and 1 into GPRs before using
the relevant mov[tf].[sd] instruction. Now $zero is used directly.
Reviewers: dsanders, vkalintiris, zoran.jovanovic
Differential Review: https://reviews.llvm.org/D23118
llvm-svn: 281022
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D22347
llvm-svn: 277719
|
| |
|
|
|
|
|
|
| |
SWC2 instructions and add CodeGen support
Differential Revision: http://reviews.llvm.org/D18824
llvm-svn: 275050
|
| |
|
|
|
|
| |
This reverts commit r269176 as it caused test-suite failure.
llvm-svn: 269287
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D19713
llvm-svn: 269176
|
| |
|
|
|
|
| |
Commit r266861 was the reason for failing tests in LLVM test suite.
llvm-svn: 267166
|
| |
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
SEL.fmt, SELEQZ.fmt, SELNEQZ.fmt and CLASS.fmt
Differential Revision: http://reviews.llvm.org/D13885
llvm-svn: 254405
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Almost no functional change since the InstrItinData's have been duplicated.
The one functional change is to remove IIBranch from the MSA branches. The
classes will be assigned to the MSA instructions as part of implementing
the P5600 scheduler.
II_IndirectBranchPseudo and II_ReturnPseudo can probably be removed. I've
preserved the itinerary information for the corresponding pseudo
instructions to avoid making a functional change to these pseudos in
this patch.
Reviewers: vkalintiris
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D12189
llvm-svn: 248273
|
| |
|
|
|
|
|
|
| |
FLOOR.W.fmt, TRUNC.L.fmt, TRUNC.W.fmt, RSQRT.fmt and SQRT.fmt instructions
Differential Revision: http://reviews.llvm.org/D11674
llvm-svn: 246968
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Instead of explicitly adding the IsFP64bit and NotFP64bit predicates through AdditionalRequires.
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D9566
llvm-svn: 236835
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D6169
llvm-svn: 222355
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Also tightened up the acceptable condition operand for these instructions
on MIPS-I to MIPS-III. Support for $fcc[1-7] was added in MIPS-IV. Prior
to that only $fcc0 is acceptable.
We currently don't optimize (BEQZ (NOT $a), $target) and similar. It's
probably best to do this in InstCombine.
Depends on D4111
Reviewers: jkolek, zoran.jovanovic, vmedic
Reviewed By: vmedic
Differential Revision: http://reviews.llvm.org/D4112
llvm-svn: 210787
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Folded mips64-fp-indexed-ls.ll into fp-indexed-ls.ll. To do so, the zext's in
mips64-fp-indexed-ls.ll were changed to implicit sign extensions (performed
by getelementptr). This does not affect the purpose of the test.
Depends on D4004
Reviewers: zoran.jovanovic, jkolek, vmedic
Reviewed By: vmedic
Differential Revision: http://reviews.llvm.org/D4110
llvm-svn: 210784
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-mcpu=mips(2|32) does not accept them
Summary:
This required a new instruction group representing the 32-bit subset of
MIPS-3 that was available in MIPS32R2.
To limit the number of tests required, only one 32-bit and one 64-bit ISA
prior to MIPS32/MIPS64 are tested.
rdhwr has been deliberately left without an ISA annotation for now. This is
because the assembler and CodeGen disagree on when the instruction is
available. Strictly speaking, it is only available in MIPS32r2 and
MIPS64r2. However, it is emulated by a kernel trap on earlier ISA's and is
necessary for TLS so CodeGen should emit it on older ISA's too.
Depends on D3696
Reviewers: vmedic
Reviewed By: vmedic
Differential Revision: http://reviews.llvm.org/D3697
llvm-svn: 208690
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-mcpu=mips[1234] does not accept them
Summary:
This required a new instruction group representing the 32-bit subset of
MIPS-V that was available in MIPS32R2
Most of these instructions are correctly rejected but with the wrong error
message. These have been placed in a separate test for now. It happens
because many of the MIPS V instructions have not been implemented.
Depends on D3694
Reviewers: vmedic
Reviewed By: vmedic
Differential Revision: http://reviews.llvm.org/D3695
llvm-svn: 208546
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
!listconcat
Summary:
The overall idea is to chop the Predicates list into subsets that are
usually overridden independently. This allows subclasses to partially
override the predicates of their superclasses without having to re-add all
the existing predicates.
This patch starts the process by moving HasStdEnc into a new
EncodingPredicates list and almost everything else into
AdditionalPredicates.
It has revealed a couple likely bugs where 'let Predicates' has removed
the HasStdEnc predicate.
No functional change (confirmed by diffing tablegen-erated files).
Depends on D3549, D3506
Reviewers: vmedic
Differential Revision: http://reviews.llvm.org/D3550
llvm-svn: 208184
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This will make it easier to prove that a more complicated change in the
following commit is non-functional.
No functional change.
Depends on D3506
Reviewers: vmedic
Reviewed By: vmedic
Differential Revision: http://reviews.llvm.org/D3549
llvm-svn: 208179
|
| |
|
|
|
|
| |
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199748
|
| |
|
|
|
|
| |
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199747
|
| |
|
|
|
|
| |
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199743
|
| |
|
|
|
|
|
|
| |
II_SQRT_D respectively
No functional change
llvm-svn: 199741
|
| |
|
|
|
|
|
|
| |
II_DIV_D respectively
No functional change
llvm-svn: 199738
|
| |
|
|
|
|
|
|
| |
II_NMADD_D, and II_NMSUB_S
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199737
|
| |
|
|
|
|
|
|
| |
II_NMADD_S, and II_NMSUB_S
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199734
|
| |
|
|
|
|
| |
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199732
|
| |
|
|
|
|
| |
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199728
|
| |
|
|
|
|
| |
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199727
|
| |
|
|
|
|
| |
No functional change since the InstrItinData's have been duplicated.
llvm-svn: 199722
|
| |
|
|
| |
llvm-svn: 198009
|
|
|
llvm-svn: 197815
|