1 ## Test that 64 bit movq instructions with immediate operands
2 ## that fit in 32 bits are shortened.
4 RUN: %clang %cflags %p/Inputs/asm_main.c %p/Inputs/shorten_mov.s -o %t.exe
5 RUN: llvm-bolt %t.exe -o %t
6 RUN: llvm-objdump -d %t --print-imm-hex | FileCheck %s
9 CHECK-NEXT: 48 c7 c0 11 11 00 00 movq $0x1111, %rax
10 CHECK-NEXT: 48 c7 c0 11 11 00 00 movq $0x1111, %rax
11 CHECK-NEXT: 48 c7 c0 22 22 11 11 movq $0x11112222, %rax
12 CHECK-NEXT: 48 b8 22 22 11 11 01 00 00 00 movabsq $0x111112222, %rax
13 CHECK-NEXT: 48 c7 c0 ff ff ff ff movq $-0x1, %rax
14 CHECK-NEXT: 48 b8 ff ff ff ff ff ff ff 7f movabsq $0x7fffffffffffffff, %rax