xref: /aosp_15_r20/external/llvm/test/MC/X86/x86_64-imm-widths.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker// RUN: llvm-mc -triple x86_64- --show-encoding %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker// CHECK: addb $0, %al
4*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x04,0x00]
5*9880d681SAndroid Build Coastguard Worker 	addb $0x00, %al
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Worker// CHECK: addb $127, %al
8*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x04,0x7f]
9*9880d681SAndroid Build Coastguard Worker 	addb $0x7F, %al
10*9880d681SAndroid Build Coastguard Worker
11*9880d681SAndroid Build Coastguard Worker// CHECK: addb $128, %al
12*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x04,0x80]
13*9880d681SAndroid Build Coastguard Worker 	addb $0x80, %al
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker// CHECK: addb $255, %al
16*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x04,0xff]
17*9880d681SAndroid Build Coastguard Worker 	addb $0xFF, %al
18*9880d681SAndroid Build Coastguard Worker
19*9880d681SAndroid Build Coastguard Worker// CHECK: addw $0, %ax
20*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x66,0x83,0xc0,0x00]
21*9880d681SAndroid Build Coastguard Worker 	addw $0x0000, %ax
22*9880d681SAndroid Build Coastguard Worker
23*9880d681SAndroid Build Coastguard Worker// CHECK: addw $127, %ax
24*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x66,0x83,0xc0,0x7f]
25*9880d681SAndroid Build Coastguard Worker 	addw $0x007F, %ax
26*9880d681SAndroid Build Coastguard Worker
27*9880d681SAndroid Build Coastguard Worker// CHECK: addw $65408, %ax
28*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x66,0x83,0xc0,0x80]
29*9880d681SAndroid Build Coastguard Worker 	addw $0xFF80, %ax
30*9880d681SAndroid Build Coastguard Worker
31*9880d681SAndroid Build Coastguard Worker// CHECK: addw $65535, %ax
32*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x66,0x83,0xc0,0xff]
33*9880d681SAndroid Build Coastguard Worker	addw $0xFFFF, %ax
34*9880d681SAndroid Build Coastguard Worker
35*9880d681SAndroid Build Coastguard Worker// CHECK: addl $0, %eax
36*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x83,0xc0,0x00]
37*9880d681SAndroid Build Coastguard Worker 	addl $0x00000000, %eax
38*9880d681SAndroid Build Coastguard Worker
39*9880d681SAndroid Build Coastguard Worker// CHECK: addl $127, %eax
40*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x83,0xc0,0x7f]
41*9880d681SAndroid Build Coastguard Worker 	addl $0x0000007F, %eax
42*9880d681SAndroid Build Coastguard Worker
43*9880d681SAndroid Build Coastguard Worker// CHECK: addl $65408, %eax
44*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x05,0x80,0xff,0x00,0x00]
45*9880d681SAndroid Build Coastguard Worker 	addl $0xFF80, %eax
46*9880d681SAndroid Build Coastguard Worker
47*9880d681SAndroid Build Coastguard Worker// CHECK: addl $65535, %eax
48*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x05,0xff,0xff,0x00,0x00]
49*9880d681SAndroid Build Coastguard Worker	addl $0xFFFF, %eax
50*9880d681SAndroid Build Coastguard Worker
51*9880d681SAndroid Build Coastguard Worker// CHECK: addl $4294967168, %eax
52*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x83,0xc0,0x80]
53*9880d681SAndroid Build Coastguard Worker 	addl $0xFFFFFF80, %eax
54*9880d681SAndroid Build Coastguard Worker
55*9880d681SAndroid Build Coastguard Worker// CHECK: addl $4294967295, %eax
56*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x83,0xc0,0xff]
57*9880d681SAndroid Build Coastguard Worker 	addl $0xFFFFFFFF, %eax
58*9880d681SAndroid Build Coastguard Worker
59*9880d681SAndroid Build Coastguard Worker// CHECK: addq $0, %rax
60*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x83,0xc0,0x00]
61*9880d681SAndroid Build Coastguard Worker 	addq $0x0000000000000000, %rax
62*9880d681SAndroid Build Coastguard Worker
63*9880d681SAndroid Build Coastguard Worker// CHECK: addq $127, %rax
64*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x83,0xc0,0x7f]
65*9880d681SAndroid Build Coastguard Worker 	addq $0x000000000000007F, %rax
66*9880d681SAndroid Build Coastguard Worker
67*9880d681SAndroid Build Coastguard Worker// CHECK: addq $-128, %rax
68*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x83,0xc0,0x80]
69*9880d681SAndroid Build Coastguard Worker 	addq $0xFFFFFFFFFFFFFF80, %rax
70*9880d681SAndroid Build Coastguard Worker
71*9880d681SAndroid Build Coastguard Worker// CHECK: addq $-1, %rax
72*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x83,0xc0,0xff]
73*9880d681SAndroid Build Coastguard Worker 	addq $0xFFFFFFFFFFFFFFFF, %rax
74*9880d681SAndroid Build Coastguard Worker
75*9880d681SAndroid Build Coastguard Worker// CHECK: addq $0, %rax
76*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x83,0xc0,0x00]
77*9880d681SAndroid Build Coastguard Worker 	addq $0x0000000000000000, %rax
78*9880d681SAndroid Build Coastguard Worker
79*9880d681SAndroid Build Coastguard Worker// CHECK: addq $65408, %rax
80*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x05,0x80,0xff,0x00,0x00]
81*9880d681SAndroid Build Coastguard Worker 	addq $0xFF80, %rax
82*9880d681SAndroid Build Coastguard Worker
83*9880d681SAndroid Build Coastguard Worker// CHECK: addq $65535, %rax
84*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x05,0xff,0xff,0x00,0x00]
85*9880d681SAndroid Build Coastguard Worker	addq $0xFFFF, %rax
86*9880d681SAndroid Build Coastguard Worker
87*9880d681SAndroid Build Coastguard Worker// CHECK: movabsq $4294967168, %rax
88*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0xb8,0x80,0xff,0xff,0xff,0x00,0x00,0x00,0x00]
89*9880d681SAndroid Build Coastguard Worker 	movq $0xFFFFFF80, %rax
90*9880d681SAndroid Build Coastguard Worker
91*9880d681SAndroid Build Coastguard Worker// CHECK: movabsq $4294967295, %rax
92*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0xb8,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00]
93*9880d681SAndroid Build Coastguard Worker        movq $0xFFFFFFFF, %rax
94*9880d681SAndroid Build Coastguard Worker
95*9880d681SAndroid Build Coastguard Worker// CHECK: addq $2147483647, %rax
96*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x05,0xff,0xff,0xff,0x7f]
97*9880d681SAndroid Build Coastguard Worker 	addq $0x000000007FFFFFFF, %rax
98*9880d681SAndroid Build Coastguard Worker
99*9880d681SAndroid Build Coastguard Worker// CHECK: addq $-2147483648, %rax
100*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x05,0x00,0x00,0x00,0x80]
101*9880d681SAndroid Build Coastguard Worker	addq $0xFFFFFFFF80000000, %rax
102*9880d681SAndroid Build Coastguard Worker
103*9880d681SAndroid Build Coastguard Worker// CHECK: addq $-256, %rax
104*9880d681SAndroid Build Coastguard Worker// CHECK: encoding: [0x48,0x05,0x00,0xff,0xff,0xff]
105*9880d681SAndroid Build Coastguard Worker 	addq $0xFFFFFFFFFFFFFF00, %rax
106