Skip to content
Snippets Groups Projects
Commit fc26cfcd authored by Zoran Jovanovic's avatar Zoran Jovanovic
Browse files

Fixed bug when generating Load Upper Immediate microMIPS instruction.

llvm-svn: 190746
parent 3671a544
No related branches found
No related tags found
No related merge requests found
...@@ -363,7 +363,7 @@ class CLO_FM<bits<6> funct> : StdArch { ...@@ -363,7 +363,7 @@ class CLO_FM<bits<6> funct> : StdArch {
let rt = rd; let rt = rd;
} }
class LUI_FM { class LUI_FM : StdArch {
bits<5> rt; bits<5> rt;
bits<16> imm16; bits<16> imm16;
......
...@@ -447,7 +447,7 @@ class shift_rotate_reg<string opstr, RegisterOperand RO, ...@@ -447,7 +447,7 @@ class shift_rotate_reg<string opstr, RegisterOperand RO,
// Load Upper Imediate // Load Upper Imediate
class LoadUpper<string opstr, RegisterOperand RO, Operand Imm>: class LoadUpper<string opstr, RegisterOperand RO, Operand Imm>:
InstSE<(outs RO:$rt), (ins Imm:$imm16), !strconcat(opstr, "\t$rt, $imm16"), InstSE<(outs RO:$rt), (ins Imm:$imm16), !strconcat(opstr, "\t$rt, $imm16"),
[], IIArith, FrmI>, IsAsCheapAsAMove { [], IIArith, FrmI, opstr>, IsAsCheapAsAMove {
let neverHasSideEffects = 1; let neverHasSideEffects = 1;
let isReMaterializable = 1; let isReMaterializable = 1;
} }
......
...@@ -49,6 +49,9 @@ ...@@ -49,6 +49,9 @@
# CHECK: sltu $3, $3, $5 # CHECK: sltu $3, $3, $5
0x00 0xa3 0x1b 0x90 0x00 0xa3 0x1b 0x90
# CHECK: lui $9, 17767
0x41 0xa9 0x45 0x67
# CHECK: and $9, $6, $7 # CHECK: and $9, $6, $7
0x00 0xe6 0x4a 0x50 0x00 0xe6 0x4a 0x50
......
...@@ -49,6 +49,9 @@ ...@@ -49,6 +49,9 @@
# CHECK: sltu $3, $3, $5 # CHECK: sltu $3, $3, $5
0xa3 0x00 0x90 0x1b 0xa3 0x00 0x90 0x1b
# CHECK: lui $9, 17767
0xa9 0x41 0x67 0x45
# CHECK: and $9, $6, $7 # CHECK: and $9, $6, $7
0xe6 0x00 0x50 0x4a 0xe6 0x00 0x50 0x4a
......
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
# CHECK-EL: slti $3, $3, 103 # encoding: [0x63,0x90,0x67,0x00] # CHECK-EL: slti $3, $3, 103 # encoding: [0x63,0x90,0x67,0x00]
# CHECK-EL: sltiu $3, $3, 103 # encoding: [0x63,0xb0,0x67,0x00] # CHECK-EL: sltiu $3, $3, 103 # encoding: [0x63,0xb0,0x67,0x00]
# CHECK-EL: sltu $3, $3, $5 # encoding: [0xa3,0x00,0x90,0x1b] # CHECK-EL: sltu $3, $3, $5 # encoding: [0xa3,0x00,0x90,0x1b]
# CHECK-EL: lui $9, 17767 # encoding: [0xa9,0x41,0x67,0x45]
# CHECK-EL: and $9, $6, $7 # encoding: [0xe6,0x00,0x50,0x4a] # CHECK-EL: and $9, $6, $7 # encoding: [0xe6,0x00,0x50,0x4a]
# CHECK-EL: andi $9, $6, 17767 # encoding: [0x26,0xd1,0x67,0x45] # CHECK-EL: andi $9, $6, 17767 # encoding: [0x26,0xd1,0x67,0x45]
# CHECK-EL: andi $9, $6, 17767 # encoding: [0x26,0xd1,0x67,0x45] # CHECK-EL: andi $9, $6, 17767 # encoding: [0x26,0xd1,0x67,0x45]
...@@ -57,6 +58,7 @@ ...@@ -57,6 +58,7 @@
# CHECK-EB: slti $3, $3, 103 # encoding: [0x90,0x63,0x00,0x67] # CHECK-EB: slti $3, $3, 103 # encoding: [0x90,0x63,0x00,0x67]
# CHECK-EB: sltiu $3, $3, 103 # encoding: [0xb0,0x63,0x00,0x67] # CHECK-EB: sltiu $3, $3, 103 # encoding: [0xb0,0x63,0x00,0x67]
# CHECK-EB: sltu $3, $3, $5 # encoding: [0x00,0xa3,0x1b,0x90] # CHECK-EB: sltu $3, $3, $5 # encoding: [0x00,0xa3,0x1b,0x90]
# CHECK-EB: lui $9, 17767 # encoding: [0x41,0xa9,0x45,0x67]
# CHECK-EB: and $9, $6, $7 # encoding: [0x00,0xe6,0x4a,0x50] # CHECK-EB: and $9, $6, $7 # encoding: [0x00,0xe6,0x4a,0x50]
# CHECK-EB: andi $9, $6, 17767 # encoding: [0xd1,0x26,0x45,0x67] # CHECK-EB: andi $9, $6, 17767 # encoding: [0xd1,0x26,0x45,0x67]
# CHECK-EB: andi $9, $6, 17767 # encoding: [0xd1,0x26,0x45,0x67] # CHECK-EB: andi $9, $6, 17767 # encoding: [0xd1,0x26,0x45,0x67]
...@@ -88,6 +90,7 @@ ...@@ -88,6 +90,7 @@
slti $3, $3, 103 slti $3, $3, 103
sltiu $3, $3, 103 sltiu $3, $3, 103
sltu $3, $3, $5 sltu $3, $3, $5
lui $9, 17767
and $9, $6, $7 and $9, $6, $7
and $9, $6, 17767 and $9, $6, 17767
andi $9, $6, 17767 andi $9, $6, 17767
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment