Skip to content

Commit 61a8d2d

Browse files
authored
VE: Stop using PointerLikeRegClass (#157394)
There is only one pointer size so there is no reason to use ptr_rc.
1 parent f20640b commit 61a8d2d

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

llvm/lib/Target/VE/VEInstrInfo.td

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ include "VEInstrFormats.td"
3939
// e.g. 0.0 (0x00000000) or -2.0 (0xC0000000=(2)1).
4040
//===----------------------------------------------------------------------===//
4141

42+
defvar ve_ptr_rc = I64;
43+
4244
def ULO7 : SDNodeXForm<imm, [{
4345
return CurDAG->getTargetConstant(N->getZExtValue() & 0x7f,
4446
SDLoc(N), MVT::i32);
@@ -325,17 +327,17 @@ def VEMEMziiAsmOperand : AsmOperandClass {
325327
// ASX format uses single assembly instruction format.
326328
def MEMrri : Operand<iPTR> {
327329
let PrintMethod = "printMemASXOperand";
328-
let MIOperandInfo = (ops ptr_rc, ptr_rc, i64imm);
330+
let MIOperandInfo = (ops ve_ptr_rc, ve_ptr_rc, i64imm);
329331
let ParserMatchClass = VEMEMrriAsmOperand;
330332
}
331333
def MEMrii : Operand<iPTR> {
332334
let PrintMethod = "printMemASXOperand";
333-
let MIOperandInfo = (ops ptr_rc, i32imm, i64imm);
335+
let MIOperandInfo = (ops ve_ptr_rc, i32imm, i64imm);
334336
let ParserMatchClass = VEMEMriiAsmOperand;
335337
}
336338
def MEMzri : Operand<iPTR> {
337339
let PrintMethod = "printMemASXOperand";
338-
let MIOperandInfo = (ops i32imm /* = 0 */, ptr_rc, i64imm);
340+
let MIOperandInfo = (ops i32imm /* = 0 */, ve_ptr_rc, i64imm);
339341
let ParserMatchClass = VEMEMzriAsmOperand;
340342
}
341343
def MEMzii : Operand<iPTR> {
@@ -358,7 +360,7 @@ def VEMEMziAsmOperand : AsmOperandClass {
358360
// 1. AS generic assembly instruction format:
359361
def MEMriASX : Operand<iPTR> {
360362
let PrintMethod = "printMemASOperandASX";
361-
let MIOperandInfo = (ops ptr_rc, i32imm);
363+
let MIOperandInfo = (ops ve_ptr_rc, i32imm);
362364
let ParserMatchClass = VEMEMriAsmOperand;
363365
}
364366
def MEMziASX : Operand<iPTR> {
@@ -370,7 +372,7 @@ def MEMziASX : Operand<iPTR> {
370372
// 2. AS RRM style assembly instruction format:
371373
def MEMriRRM : Operand<iPTR> {
372374
let PrintMethod = "printMemASOperandRRM";
373-
let MIOperandInfo = (ops ptr_rc, i32imm);
375+
let MIOperandInfo = (ops ve_ptr_rc, i32imm);
374376
let ParserMatchClass = VEMEMriAsmOperand;
375377
}
376378
def MEMziRRM : Operand<iPTR> {
@@ -382,7 +384,7 @@ def MEMziRRM : Operand<iPTR> {
382384
// 3. AS HM style assembly instruction format:
383385
def MEMriHM : Operand<iPTR> {
384386
let PrintMethod = "printMemASOperandHM";
385-
let MIOperandInfo = (ops ptr_rc, i32imm);
387+
let MIOperandInfo = (ops ve_ptr_rc, i32imm);
386388
let ParserMatchClass = VEMEMriAsmOperand;
387389
}
388390
def MEMziHM : Operand<iPTR> {

0 commit comments

Comments
 (0)