summaryrefslogtreecommitdiffstats
path: root/llvm/test/MC/Sparc/sparc-fp-instructions.s
Commit message (Collapse)AuthorAgeFilesLines
* The patch adds missing registers and instructions to complete all the ↵Chris Dewhurst2016-02-271-11/+19
| | | | | | | | | | | | | registers supported by the Sparc v8 manual. These are all co-processor registers, with the exception of the floating-point deferred-trap queue register. Although these will not be lowered automatically by any instructions, it allows the use of co-processor instructions implemented by inline-assembly. Code Reviewed at http://reviews.llvm.org/D17133, with the exception of a very small change in brace placement in SparcInstrInfo.td, which was formerly causing a problem in the disassembly of the %fq register. llvm-svn: 262133
* Reverting breaking change. Sorry.Chris Dewhurst2016-02-261-19/+11
| | | | llvm-svn: 262007
* Reviewed at reviews.llvm.org/D17133Chris Dewhurst2016-02-261-11/+19
| | | | llvm-svn: 262005
* Load/store instructions for floating points with address space require SparcV9.Joerg Sonnenberger2015-08-181-22/+2
| | | | | | | | To properly handle this, define the *a instructions as separate instruction classes by refactoring the LoadA and StoreA multiclasses. Move the instruction tests into the sparcv9 file to test the difference. llvm-svn: 245360
* Load/store for float registers from/to alternate space.Joerg Sonnenberger2015-08-101-0/+29
| | | | llvm-svn: 244532
* TableGen: fix operand counting for aliasesTim Northover2014-05-161-6/+6
| | | | | | | | | | | | | | | | | | | | | TableGen has a fairly dubious heuristic to decide whether an alias should be printed: does the alias have lest operands than the real instruction. This is bad enough (particularly with no way to override it), but it should at least be calculated consistently for both strings. This patch implements that logic: first get the *correct* string for the variant, in the same way as the Matcher, without guessing; then count the number of whitespace chars. There are basically 4 changes this brings about after the previous commits; all of these appear to be good, so I have changed the tests: + ARM64: we print "neg X, Y" instead of "sub X, xzr, Y". + ARM64: we skip implicit "uxtx" and "uxtw" modifiers. + Sparc: we print "mov A, B" instead of "or %g0, A, B". + Sparc: we print "fcmpX A, B" instead of "fcmpX %fcc0, A, B" llvm-svn: 208969
* [Sparc] Add fcmpe* instructions to Sparc backend.Venkatraman Govindaraju2014-03-021-0/+14
| | | | llvm-svn: 202661
* [Sparc] Add support for parsing fcmp with %fcc registers.Venkatraman Govindaraju2014-03-021-3/+10
| | | | llvm-svn: 202610
* [Sparc] Correct quad register list in the asm parser.Venkatraman Govindaraju2014-01-241-0/+6
| | | | | | Add test cases to check parsing of v9 double registers and their aliased quad registers. llvm-svn: 199974
* [Sparc] Add support for parsing floating point instructions.Venkatraman Govindaraju2014-01-121-0/+113
llvm-svn: 199033
OpenPOWER on IntegriCloud