1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc64le-unknown-linux-gnu | FileCheck %s
3 ; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc64-unknown-linux-gnu | FileCheck %s
4 ; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc64-ibm-aix-xcoff | FileCheck %s
6 define i64 @ori_test_a(i64 %a) {
7 ; CHECK-LABEL: ori_test_a:
8 ; CHECK: # %bb.0: # %entry
9 ; CHECK-NEXT: ori 3, 3, 65535
10 ; CHECK-NEXT: oris 3, 3, 65535
13 %or = or i64 %a, 4294967295
17 define i64 @ori_test_b(i64 %a) {
18 ; CHECK-LABEL: ori_test_b:
19 ; CHECK: # %bb.0: # %entry
20 ; CHECK-NEXT: li 4, -1
21 ; CHECK-NEXT: rldimi 3, 4, 32, 31
24 %or = or i64 %a, 4294967296
28 define i64 @ori_test_c(i64 %a) {
29 ; CHECK-LABEL: ori_test_c:
30 ; CHECK: # %bb.0: # %entry
31 ; CHECK-NEXT: ori 3, 3, 65535
34 %or = or i64 %a, 65535
38 define i64 @ori_test_d(i64 %a) {
39 ; CHECK-LABEL: ori_test_d:
40 ; CHECK: # %bb.0: # %entry
41 ; CHECK-NEXT: oris 3, 3, 1
44 %or = or i64 %a, 65536
48 define zeroext i32 @ori_test_e(i32 zeroext %a) {
49 ; CHECK-LABEL: ori_test_e:
50 ; CHECK: # %bb.0: # %entry
51 ; CHECK-NEXT: ori 3, 3, 65535
52 ; CHECK-NEXT: oris 3, 3, 255
55 %or = or i32 %a, 16777215
59 define i64 @xori_test_a(i64 %a) {
60 ; CHECK-LABEL: xori_test_a:
61 ; CHECK: # %bb.0: # %entry
62 ; CHECK-NEXT: xori 3, 3, 65535
63 ; CHECK-NEXT: xoris 3, 3, 65535
66 %xor = xor i64 %a, 4294967295
70 define i64 @xori_test_b(i64 %a) {
71 ; CHECK-LABEL: xori_test_b:
72 ; CHECK: # %bb.0: # %entry
74 ; CHECK-NEXT: rldic 4, 4, 32, 31
75 ; CHECK-NEXT: xor 3, 3, 4
78 %xor = xor i64 %a, 4294967296
82 define i64 @xori_test_c(i64 %a) {
83 ; CHECK-LABEL: xori_test_c:
84 ; CHECK: # %bb.0: # %entry
85 ; CHECK-NEXT: xori 3, 3, 65535
88 %xor = xor i64 %a, 65535
92 define i64 @xori_test_d(i64 %a) {
93 ; CHECK-LABEL: xori_test_d:
94 ; CHECK: # %bb.0: # %entry
95 ; CHECK-NEXT: xoris 3, 3, 1
98 %xor = xor i64 %a, 65536
102 define zeroext i32 @xori_test_e(i32 zeroext %a) {
103 ; CHECK-LABEL: xori_test_e:
104 ; CHECK: # %bb.0: # %entry
105 ; CHECK-NEXT: xori 3, 3, 65535
106 ; CHECK-NEXT: xoris 3, 3, 255
109 %xor = xor i32 %a, 16777215