1 ; RUN: llc < %s -march=x86-64 | FileCheck %s
4 define i32 @test1(i32 %x) nounwind {
6 %shl = and i32 %and, 31744
13 define i32 @test2(i32 %x) nounwind {
15 %shl = or i32 %or, 31744
22 define i32 @test3(i32 %x) nounwind {
24 %shl = xor i32 %xor, 31744
31 define i64 @test4(i64 %x) nounwind {
33 %shl = and i64 %and, 264982302294016
40 define i64 @test5(i64 %x) nounwind {
42 %shl = and i64 %and, 34084860461056
49 define i64 @test6(i64 %x) nounwind {
51 %shl = and i64 %and, -281474976710656
58 define i64 @test7(i64 %x) nounwind {
60 %shl = or i64 %or, 264982302294016
67 define i64 @test8(i64 %x) nounwind {
69 %shl = or i64 %or, 34084860461056
76 define i64 @test9(i64 %x) nounwind {
78 %shl = xor i64 %xor, 264982302294016
85 define i64 @test10(i64 %x) nounwind {
87 %shl = xor i64 %xor, 34084860461056
89 ; CHECK-LABEL: test10:
94 define i64 @test11(i64 %x) nounwind {
96 %shl = xor i64 %xor, -562949953421312
98 ; CHECK-LABEL: test11:
104 define i32 @test12(i32 %x, i32* %y) nounwind {
106 %shl = and i32 %and, 255
107 store i32 %shl, i32* %y
109 ; CHECK-LABEL: test12:
115 define i64 @test13(i64 %x, i64* %y) nounwind {
117 %shl = and i64 %and, 255
118 store i64 %shl, i64* %y
120 ; CHECK-LABEL: test13: