- Feb 10, 2014
-
-
Matheus Almeida authored
llvm-svn: 201081
-
- Jan 31, 2014
-
-
Matheus Almeida authored
This instruction is only available on Mips64 cores that implement the MSA ASE. llvm-svn: 200543
-
- Jan 29, 2014
-
-
Matheus Almeida authored
This instruction is only available on Mips64 cores that implement the MSA ASE. llvm-svn: 200400
-
Matheus Almeida authored
These instructions are only available on Mips64 cores that implement the MSA ASE. llvm-svn: 200398
-
- Nov 20, 2013
-
-
Daniel Sanders authored
There's no test case for this commit. This is because it is doubtful that the incorrect behaviour can actually trigger. When MSA is not enabled, the type legalizer should have eliminated all occurrences of patterns the affected pseudo-instruction could possibly match before instruction selection occurs. llvm-svn: 195252
-
- Oct 23, 2013
-
-
Matheus Almeida authored
llvm-svn: 193240
-
- Oct 22, 2013
-
-
Matheus Almeida authored
These branches have a 16-bit offset (R_MIPS_PC16). List of conditional branch instructions: bnz.{b,h,w,d} bnz.v bz.{b,h,w,d} bz.v llvm-svn: 193157
-
- Oct 21, 2013
-
-
Matheus Almeida authored
llvm-svn: 193082
-
Matheus Almeida authored
llvm-svn: 193081
-
Matheus Almeida authored
llvm-svn: 193080
-
Matheus Almeida authored
These instructions are logically related as they allow read/write of MSA control registers. Currently MSA control registers are emitted by number but hopefully that will change as soon as GAS starts accepting them by name as that would make the assembly easier to read. llvm-svn: 193078
-
Matheus Almeida authored
The second parameter of the SLD intrinsic is the number of columns (GPR) to slide left the source array. llvm-svn: 193076
-
- Oct 17, 2013
-
-
Daniel Sanders authored
llvm-svn: 192895
-
- Oct 14, 2013
-
-
Matheus Almeida authored
List of instructions: bclri.{b,h,w,d} binsli.{b,h,w,d} binsri.{b,h,w,d} bnegi.{b,h,w,d} bseti.{b,h,w,d} sat_s.{b,h,w,d} sat_u.{b,h,w,d} slli.{b,h,w,d} srai.{b,h,w,d} srari.{b,h,w,d} srli.{b,h,w,d} srlri.{b,h,w,d} llvm-svn: 192589
-
Matheus Almeida authored
List of instructions: and.v, bmnz.v, bmz.v, bsel.v, nor.v, or.v, xor.v. llvm-svn: 192588
-
Matheus Almeida authored
List of instructions: copy_s.{b,h,w} copy_u.{b,h,w} sldi.{b,h,w,d} splati.{b,h,w,d} llvm-svn: 192586
-
Matheus Almeida authored
INSERT is the first type of MSA instruction that requires a change to the way MSA registers are parsed. This happens because MSA registers may be suffixed by an index in the form of an immediate or a general purpose register. The changes to parseMSARegs reflect that requirement. llvm-svn: 192582
-
- Oct 11, 2013
-
-
Matheus Almeida authored
llvm-svn: 192451
-
Matheus Almeida authored
llvm-svn: 192450
-
Matheus Almeida authored
llvm-svn: 192449
-
Matheus Almeida authored
INSERT is the first type of MSA instruction that requires a change to the way MSA registers are parsed. This happens because MSA registers may be suffixed by an index in the form of an immediate or a general purpose register. The changes to parseMSARegs reflect that requirement. llvm-svn: 192447
-
- Sep 30, 2013
-
-
Jack Carter authored
This patch adds Direct Object Emission support for I8 instructions: andi.b, bmnzi.b, bmzi.b, bseli.b, nori.b, ori.b, shf.{b,h,w} and xori.b. Patch by Matheus Almeida llvm-svn: 191688
-
Jack Carter authored
This patch adds Direct Object Emission support for I5 instructions: addvi.{b,h,w,d}, ceqi.{b,h,w,d}, clei_s.{b,h,w,d}, clei_u.{b,h,w,d}, clti_s.{b,h,w,d}, clti_u.{b,h,w,d}, maxi_s.{b,h,w,d}, maxi_u.{b,h,w,d}, mini_s.{b,h,w,d}, mini_u.{b,h,w,d}, subvi.{b,h,w,d}. Patch by Matheus Almeida llvm-svn: 191687
-
Jack Carter authored
This patch adds Direct Object Emission support for 2R instructions: nloc.{b,h,w}, nlzc.{b,h,w}, pcnt.{b,w,d}. Patch by Matheus Almeida llvm-svn: 191685
-
Jack Carter authored
and not an MSA register Patch by Matheus Almeida llvm-svn: 191684
-
- Sep 26, 2013
-
-
Jack Carter authored
Patch by Matheus Almeida llvm-svn: 191461
-
Jack Carter authored
This is the first set of instructions with a ".b" modifier thus we need to add the required code to disassemble a MSA128B register class. Patch by Matheus Almeida llvm-svn: 191415
-
Jack Carter authored
In more detail, this patch adds the ability to parse, encode and decode MSA registers ($w0-$w31). The format of 2RF instructions (MipsMSAInstrFormat.td) was updated so that we could attach a test case to this patch i.e., the test case parses, encodes and decodes 2 MSA instructions. Following patches will add the remainder of the instructions. Note that DecodeMSA128BRegisterClass is missing from MipsDisassembler.td because it's not yet required at this stage and having it would cause a compiler warning (unused function). Patch by Matheus Almeida llvm-svn: 191412
-
- Aug 28, 2013
-
-
Daniel Sanders authored
These intrinsics are legalized to V(ALL|ANY)_(NON)?ZERO nodes, are matched as SN?Z_[BHWDV]_PSEUDO pseudo's, and emitted as a branch/mov sequence to evaluate to 0 or 1. Note: The resulting code is sub-optimal since it doesnt seem to be possible to feed the result of an intrinsic directly into a brcond. At the moment it uses (SETCC (VALL_ZERO $ws), 0, SETEQ) and similar which unnecessarily evaluates the boolean twice. llvm-svn: 189478
-
Daniel Sanders authored
The MSA control registers have been added as reserved registers, and are only used via ISD::Copy(To|From)Reg. The intrinsics are lowered into these nodes. llvm-svn: 189468
-
- Aug 20, 2013
-
-
Daniel Sanders authored
llvm-svn: 188767
-
- Aug 15, 2013
-
-
Jack Carter authored
Includes: add_a, adds_[asu], addv, addvi, andi.b, asub_[su].[bhwd], aver?_[su]_[bhwd], bclr, bclri, bins[lr], bins[lr]i, bmnzi, bmzi, bneg, bnegi, bseli, bset, bseti, c(eq|ne), c(eq|ne)i, cl[et]_[su], cl[et]i_[su], copy_[su].[bhw], div_[su], dotp_[su], dpadd_[su], dpsub_[su], ilvev, ilvl, ilvod, ilvr, insv, insve, ldi Patch by Daniel Sanders llvm-svn: 188457
-
- Aug 13, 2013
-
-
Jack Carter authored
* msa SubtargetFeature * registers * ld.[bhwd], and st.[bhwd] instructions Does not correctly prohibit use of both 32-bit FPU registers and MSA together. Patch by Daniel Sanders llvm-svn: 188313
-