Index: lib/Target/ARM/ARMInstrInfo.td =================================================================== --- lib/Target/ARM/ARMInstrInfo.td +++ lib/Target/ARM/ARMInstrInfo.td @@ -3328,7 +3328,7 @@ def : InstAlias<"mov${p} $Rd, $imm", (MOVi16 GPR:$Rd, imm0_65535_expr:$imm, pred:$p)>, - Requires<[IsARM]>; + Requires<[IsARM, HasV6T2]>; def MOVi16_ga_pcrel : PseudoInst<(outs GPR:$Rd), (ins i32imm:$addr, pclabel:$id), IIC_iMOVi, []>, Index: test/MC/ARM/not-armv4.s =================================================================== --- test/MC/ARM/not-armv4.s +++ test/MC/ARM/not-armv4.s @@ -6,3 +6,8 @@ @ CHECK: error: instruction requires: armv6t2 rbit r4,r9 + +@ CHECK: error: instruction requires: armv6t2 +movw r4,#0x1234 +@ CHECK: error: instruction requires: armv6t2 +mov r4,#0x1234