Lines Matching defs:HexagonOperand
173 struct HexagonOperand : public MCParsedAsmOperand { struct
174 enum KindTy { Token, Immediate, Register } Kind;
176 SMLoc StartLoc, EndLoc;
178 struct TokTy {
183 struct RegTy {
187 struct ImmTy {
191 struct InstTy {
195 union {
201 HexagonOperand(KindTy K) : MCParsedAsmOperand(), Kind(K) {} in HexagonOperand() argument
204 HexagonOperand(const HexagonOperand &o) : MCParsedAsmOperand() { in HexagonOperand() function
222 SMLoc getStartLoc() const { return StartLoc; } in getStartLoc()
225 SMLoc getEndLoc() const { return EndLoc; } in getEndLoc()
227 unsigned getReg() const { in getReg()
232 const MCExpr *getImm() const { in getImm()
237 bool isToken() const { return Kind == Token; } in isToken()
238 bool isImm() const { return Kind == Immediate; } in isImm()
239 bool isMem() const { llvm_unreachable("No isMem"); } in isMem()
240 bool isReg() const { return Kind == Register; } in isReg()
242 bool CheckImmRange(int immBits, int zeroBits, bool isSigned, in CheckImmRange()
278 bool isf32Ext() const { return false; } in isf32Ext()
279 bool iss32Imm() const { return CheckImmRange(32, 0, true, true, false); } in iss32Imm()
280 bool iss23_2Imm() const { return CheckImmRange(23, 2, true, true, false); } in iss23_2Imm()
281 bool iss8Imm() const { return CheckImmRange(8, 0, true, false, false); } in iss8Imm()
282 bool iss8Imm64() const { return CheckImmRange(8, 0, true, true, false); } in iss8Imm64()
283 bool iss7Imm() const { return CheckImmRange(7, 0, true, false, false); } in iss7Imm()
284 bool iss6Imm() const { return CheckImmRange(6, 0, true, false, false); } in iss6Imm()
285 bool iss4Imm() const { return CheckImmRange(4, 0, true, false, false); } in iss4Imm()
286 bool iss4_0Imm() const { return CheckImmRange(4, 0, true, false, false); } in iss4_0Imm()
287 bool iss4_1Imm() const { return CheckImmRange(4, 1, true, false, false); } in iss4_1Imm()
288 bool iss4_2Imm() const { return CheckImmRange(4, 2, true, false, false); } in iss4_2Imm()
289 bool iss4_3Imm() const { return CheckImmRange(4, 3, true, false, false); } in iss4_3Imm()
290 bool iss4_6Imm() const { return CheckImmRange(4, 0, true, false, false); } in iss4_6Imm()
291 bool iss3_6Imm() const { return CheckImmRange(3, 0, true, false, false); } in iss3_6Imm()
292 bool iss3Imm() const { return CheckImmRange(3, 0, true, false, false); } in iss3Imm()
294 bool isu64Imm() const { return CheckImmRange(64, 0, false, true, true); } in isu64Imm()
295 bool isu32Imm() const { return CheckImmRange(32, 0, false, true, false); } in isu32Imm()
296 bool isu26_6Imm() const { return CheckImmRange(26, 6, false, true, false); } in isu26_6Imm()
297 bool isu16Imm() const { return CheckImmRange(16, 0, false, true, false); } in isu16Imm()
298 bool isu16_0Imm() const { return CheckImmRange(16, 0, false, true, false); } in isu16_0Imm()
299 bool isu16_1Imm() const { return CheckImmRange(16, 1, false, true, false); } in isu16_1Imm()
300 bool isu16_2Imm() const { return CheckImmRange(16, 2, false, true, false); } in isu16_2Imm()
301 bool isu16_3Imm() const { return CheckImmRange(16, 3, false, true, false); } in isu16_3Imm()
302 bool isu11_3Imm() const { return CheckImmRange(11, 3, false, false, false); } in isu11_3Imm()
303 bool isu6_0Imm() const { return CheckImmRange(6, 0, false, false, false); } in isu6_0Imm()
304 bool isu6_1Imm() const { return CheckImmRange(6, 1, false, false, false); } in isu6_1Imm()
305 bool isu6_2Imm() const { return CheckImmRange(6, 2, false, false, false); } in isu6_2Imm()
306 bool isu6_3Imm() const { return CheckImmRange(6, 3, false, false, false); } in isu6_3Imm()
307 bool isu10Imm() const { return CheckImmRange(10, 0, false, false, false); } in isu10Imm()
308 bool isu9Imm() const { return CheckImmRange(9, 0, false, false, false); } in isu9Imm()
309 bool isu8Imm() const { return CheckImmRange(8, 0, false, false, false); } in isu8Imm()
310 bool isu7Imm() const { return CheckImmRange(7, 0, false, false, false); } in isu7Imm()
311 bool isu6Imm() const { return CheckImmRange(6, 0, false, false, false); } in isu6Imm()
312 bool isu5Imm() const { return CheckImmRange(5, 0, false, false, false); } in isu5Imm()
313 bool isu4Imm() const { return CheckImmRange(4, 0, false, false, false); } in isu4Imm()
314 bool isu3Imm() const { return CheckImmRange(3, 0, false, false, false); } in isu3Imm()
315 bool isu2Imm() const { return CheckImmRange(2, 0, false, false, false); } in isu2Imm()
316 bool isu1Imm() const { return CheckImmRange(1, 0, false, false, false); } in isu1Imm()
318 bool ism6Imm() const { return CheckImmRange(6, 0, false, false, false); } in ism6Imm()
319 bool isn8Imm() const { return CheckImmRange(8, 0, false, false, false); } in isn8Imm()
321 bool iss16Ext() const { return CheckImmRange(16 + 26, 0, true, true, true); } in iss16Ext()
322 bool iss12Ext() const { return CheckImmRange(12 + 26, 0, true, true, true); } in iss12Ext()
323 bool iss10Ext() const { return CheckImmRange(10 + 26, 0, true, true, true); } in iss10Ext()
324 bool iss9Ext() const { return CheckImmRange(9 + 26, 0, true, true, true); } in iss9Ext()
325 bool iss8Ext() const { return CheckImmRange(8 + 26, 0, true, true, true); } in iss8Ext()
326 bool iss7Ext() const { return CheckImmRange(7 + 26, 0, true, true, true); } in iss7Ext()
327 bool iss6Ext() const { return CheckImmRange(6 + 26, 0, true, true, true); } in iss6Ext()
328 bool iss11_0Ext() const { in iss11_0Ext()
331 bool iss11_1Ext() const { in iss11_1Ext()
334 bool iss11_2Ext() const { in iss11_2Ext()
337 bool iss11_3Ext() const { in iss11_3Ext()
341 bool isu6Ext() const { return CheckImmRange(6 + 26, 0, false, true, true); } in isu6Ext()
342 bool isu7Ext() const { return CheckImmRange(7 + 26, 0, false, true, true); } in isu7Ext()
343 bool isu8Ext() const { return CheckImmRange(8 + 26, 0, false, true, true); } in isu8Ext()
344 bool isu9Ext() const { return CheckImmRange(9 + 26, 0, false, true, true); } in isu9Ext()
345 bool isu10Ext() const { return CheckImmRange(10 + 26, 0, false, true, true); } in isu10Ext()
346 bool isu6_0Ext() const { return CheckImmRange(6 + 26, 0, false, true, true); } in isu6_0Ext()
347 bool isu6_1Ext() const { return CheckImmRange(6 + 26, 1, false, true, true); } in isu6_1Ext()
348 bool isu6_2Ext() const { return CheckImmRange(6 + 26, 2, false, true, true); } in isu6_2Ext()
349 bool isu6_3Ext() const { return CheckImmRange(6 + 26, 3, false, true, true); } in isu6_3Ext()
350 bool isu32MustExt() const { return isImm(); } in isu32MustExt()
352 void addRegOperands(MCInst &Inst, unsigned N) const { in addRegOperands()
357 void addImmOperands(MCInst &Inst, unsigned N) const { in addImmOperands()
362 void addSignedImmOperands(MCInst &Inst, unsigned N) const { in addSignedImmOperands()
377 void addf32ExtOperands(MCInst &Inst, unsigned N) const { in addf32ExtOperands()
381 void adds32ImmOperands(MCInst &Inst, unsigned N) const { in adds32ImmOperands()
384 void adds23_2ImmOperands(MCInst &Inst, unsigned N) const { in adds23_2ImmOperands()
387 void adds8ImmOperands(MCInst &Inst, unsigned N) const { in adds8ImmOperands()
390 void adds8Imm64Operands(MCInst &Inst, unsigned N) const { in adds8Imm64Operands()
393 void adds6ImmOperands(MCInst &Inst, unsigned N) const { in adds6ImmOperands()
396 void adds4ImmOperands(MCInst &Inst, unsigned N) const { in adds4ImmOperands()
399 void adds4_0ImmOperands(MCInst &Inst, unsigned N) const { in adds4_0ImmOperands()
402 void adds4_1ImmOperands(MCInst &Inst, unsigned N) const { in adds4_1ImmOperands()
405 void adds4_2ImmOperands(MCInst &Inst, unsigned N) const { in adds4_2ImmOperands()
408 void adds4_3ImmOperands(MCInst &Inst, unsigned N) const { in adds4_3ImmOperands()
411 void adds3ImmOperands(MCInst &Inst, unsigned N) const { in adds3ImmOperands()
415 void addu64ImmOperands(MCInst &Inst, unsigned N) const { in addu64ImmOperands()
418 void addu32ImmOperands(MCInst &Inst, unsigned N) const { in addu32ImmOperands()
421 void addu26_6ImmOperands(MCInst &Inst, unsigned N) const { in addu26_6ImmOperands()
424 void addu16ImmOperands(MCInst &Inst, unsigned N) const { in addu16ImmOperands()
427 void addu16_0ImmOperands(MCInst &Inst, unsigned N) const { in addu16_0ImmOperands()
430 void addu16_1ImmOperands(MCInst &Inst, unsigned N) const { in addu16_1ImmOperands()
433 void addu16_2ImmOperands(MCInst &Inst, unsigned N) const { in addu16_2ImmOperands()
436 void addu16_3ImmOperands(MCInst &Inst, unsigned N) const { in addu16_3ImmOperands()
439 void addu11_3ImmOperands(MCInst &Inst, unsigned N) const { in addu11_3ImmOperands()
442 void addu10ImmOperands(MCInst &Inst, unsigned N) const { in addu10ImmOperands()
445 void addu9ImmOperands(MCInst &Inst, unsigned N) const { in addu9ImmOperands()
448 void addu8ImmOperands(MCInst &Inst, unsigned N) const { in addu8ImmOperands()
451 void addu7ImmOperands(MCInst &Inst, unsigned N) const { in addu7ImmOperands()
454 void addu6ImmOperands(MCInst &Inst, unsigned N) const { in addu6ImmOperands()
457 void addu6_0ImmOperands(MCInst &Inst, unsigned N) const { in addu6_0ImmOperands()
460 void addu6_1ImmOperands(MCInst &Inst, unsigned N) const { in addu6_1ImmOperands()
463 void addu6_2ImmOperands(MCInst &Inst, unsigned N) const { in addu6_2ImmOperands()
466 void addu6_3ImmOperands(MCInst &Inst, unsigned N) const { in addu6_3ImmOperands()
469 void addu5ImmOperands(MCInst &Inst, unsigned N) const { in addu5ImmOperands()
472 void addu4ImmOperands(MCInst &Inst, unsigned N) const { in addu4ImmOperands()
475 void addu3ImmOperands(MCInst &Inst, unsigned N) const { in addu3ImmOperands()
478 void addu2ImmOperands(MCInst &Inst, unsigned N) const { in addu2ImmOperands()
481 void addu1ImmOperands(MCInst &Inst, unsigned N) const { in addu1ImmOperands()
485 void addm6ImmOperands(MCInst &Inst, unsigned N) const { in addm6ImmOperands()
488 void addn8ImmOperands(MCInst &Inst, unsigned N) const { in addn8ImmOperands()
492 void adds16ExtOperands(MCInst &Inst, unsigned N) const { in adds16ExtOperands()
495 void adds12ExtOperands(MCInst &Inst, unsigned N) const { in adds12ExtOperands()
498 void adds10ExtOperands(MCInst &Inst, unsigned N) const { in adds10ExtOperands()
501 void adds9ExtOperands(MCInst &Inst, unsigned N) const { in adds9ExtOperands()
504 void adds8ExtOperands(MCInst &Inst, unsigned N) const { in adds8ExtOperands()
507 void adds6ExtOperands(MCInst &Inst, unsigned N) const { in adds6ExtOperands()
510 void adds11_0ExtOperands(MCInst &Inst, unsigned N) const { in adds11_0ExtOperands()
513 void adds11_1ExtOperands(MCInst &Inst, unsigned N) const { in adds11_1ExtOperands()
516 void adds11_2ExtOperands(MCInst &Inst, unsigned N) const { in adds11_2ExtOperands()
519 void adds11_3ExtOperands(MCInst &Inst, unsigned N) const { in adds11_3ExtOperands()
523 void addu6ExtOperands(MCInst &Inst, unsigned N) const { in addu6ExtOperands()
526 void addu7ExtOperands(MCInst &Inst, unsigned N) const { in addu7ExtOperands()
529 void addu8ExtOperands(MCInst &Inst, unsigned N) const { in addu8ExtOperands()
532 void addu9ExtOperands(MCInst &Inst, unsigned N) const { in addu9ExtOperands()
535 void addu10ExtOperands(MCInst &Inst, unsigned N) const { in addu10ExtOperands()
538 void addu6_0ExtOperands(MCInst &Inst, unsigned N) const { in addu6_0ExtOperands()
541 void addu6_1ExtOperands(MCInst &Inst, unsigned N) const { in addu6_1ExtOperands()
544 void addu6_2ExtOperands(MCInst &Inst, unsigned N) const { in addu6_2ExtOperands()
547 void addu6_3ExtOperands(MCInst &Inst, unsigned N) const { in addu6_3ExtOperands()
550 void addu32MustExtOperands(MCInst &Inst, unsigned N) const { in addu32MustExtOperands()
554 void adds4_6ImmOperands(MCInst &Inst, unsigned N) const { in adds4_6ImmOperands()
561 void adds3_6ImmOperands(MCInst &Inst, unsigned N) const { in adds3_6ImmOperands()
568 StringRef getToken() const { in getToken()
575 static std::unique_ptr<HexagonOperand> CreateToken(StringRef Str, SMLoc S) { in CreateToken()
584 static std::unique_ptr<HexagonOperand> CreateReg(unsigned RegNum, SMLoc S, in CreateReg()
593 static std::unique_ptr<HexagonOperand> CreateImm(const MCExpr *Val, SMLoc S, in CreateImm()