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