summary refs log tree commit diff stats
path: root/results/scraper/launchpad-without-comments/1925512
blob: cfe885fc222a9499bdf0c4712205fe019e1cf9f7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
UNDEFINED case for instruction BLX

Hi

I refer to the instruction BLX imm (T2 encoding) in ARMv7 (Thumb mode). 

11110 S	imm10H	11 J1 0 J2 imm10L H


if H == '1' then UNDEFINED;
I1 = NOT(J1 EOR S);  I2 = NOT(J2 EOR S);  imm32 = SignExtend(S:I1:I2:imm10H:imm10L:'00', 32);
targetInstrSet = InstrSet_A32;
if InITBlock() && !LastInITBlock() then UNPREDICTABLE;

According to the manual, if H equals to 1, this instruction should be an UNDEFINED instruction. However, it seems QEMU does not check this constraint in function trans_BLX_i. Thanks

Regards
Muhui