Summary: The spec uses "or" for inclusive-or and "xor" for exclusive-or
Reviewers: sunfish
Subscribers: jfb, llvm-commits, dschuff
Differential Revision: http://reviews.llvm.org/D14362
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@252174
91177308-0d34-0410-b5e6-
96231b3b80d8
defm REM_S : BinaryInt<srem>;
defm REM_U : BinaryInt<urem>;
defm AND : BinaryInt<and>;
defm REM_S : BinaryInt<srem>;
defm REM_U : BinaryInt<urem>;
defm AND : BinaryInt<and>;
-defm IOR : BinaryInt<or>;
+defm OR : BinaryInt<or>;
defm XOR : BinaryInt<xor>;
defm SHL : BinaryInt<shl>;
defm SHR_U : BinaryInt<srl>;
defm XOR : BinaryInt<xor>;
defm SHL : BinaryInt<shl>;
defm SHR_U : BinaryInt<srl>;
; CHECK-NEXT: set_local 4, pop{{$}}
; CHECK-NEXT: ne (get_local 2), (get_local 2){{$}}
; CHECK-NEXT: set_local 5, pop{{$}}
; CHECK-NEXT: set_local 4, pop{{$}}
; CHECK-NEXT: ne (get_local 2), (get_local 2){{$}}
; CHECK-NEXT: set_local 5, pop{{$}}
-; CHECK-NEXT: ior (get_local 5), (get_local 4){{$}}
+; CHECK-NEXT: or (get_local 5), (get_local 4){{$}}
; CHECK-NEXT: set_local 6, pop{{$}}
; CHECK-NEXT: return (get_local 6){{$}}
define i32 @uno_f32(float %x, float %y) {
; CHECK-NEXT: set_local 6, pop{{$}}
; CHECK-NEXT: return (get_local 6){{$}}
define i32 @uno_f32(float %x, float %y) {
; CHECK-NEXT: set_local 5, pop{{$}}
; CHECK-NEXT: ne (get_local 3), (get_local 3){{$}}
; CHECK-NEXT: set_local 6, pop{{$}}
; CHECK-NEXT: set_local 5, pop{{$}}
; CHECK-NEXT: ne (get_local 3), (get_local 3){{$}}
; CHECK-NEXT: set_local 6, pop{{$}}
-; CHECK-NEXT: ior (get_local 6), (get_local 5){{$}}
+; CHECK-NEXT: or (get_local 6), (get_local 5){{$}}
; CHECK-NEXT: set_local 7, pop{{$}}
; CHECK-NEXT: set_local 7, pop{{$}}
-; CHECK-NEXT: ior (get_local 4), (get_local 7){{$}}
+; CHECK-NEXT: or (get_local 4), (get_local 7){{$}}
; CHECK-NEXT: set_local 8, pop{{$}}
; CHECK-NEXT: return (get_local 8){{$}}
define i32 @ueq_f32(float %x, float %y) {
; CHECK-NEXT: set_local 8, pop{{$}}
; CHECK-NEXT: return (get_local 8){{$}}
define i32 @ueq_f32(float %x, float %y) {
; CHECK-NEXT: set_local 4, pop{{$}}
; CHECK-NEXT: ne (get_local 2), (get_local 2){{$}}
; CHECK-NEXT: set_local 5, pop{{$}}
; CHECK-NEXT: set_local 4, pop{{$}}
; CHECK-NEXT: ne (get_local 2), (get_local 2){{$}}
; CHECK-NEXT: set_local 5, pop{{$}}
-; CHECK-NEXT: ior (get_local 5), (get_local 4){{$}}
+; CHECK-NEXT: or (get_local 5), (get_local 4){{$}}
; CHECK-NEXT: set_local 6, pop{{$}}
; CHECK-NEXT: return (get_local 6){{$}}
define i32 @uno_f64(double %x, double %y) {
; CHECK-NEXT: set_local 6, pop{{$}}
; CHECK-NEXT: return (get_local 6){{$}}
define i32 @uno_f64(double %x, double %y) {
; CHECK-NEXT: set_local 5, pop{{$}}
; CHECK-NEXT: ne (get_local 3), (get_local 3){{$}}
; CHECK-NEXT: set_local 6, pop{{$}}
; CHECK-NEXT: set_local 5, pop{{$}}
; CHECK-NEXT: ne (get_local 3), (get_local 3){{$}}
; CHECK-NEXT: set_local 6, pop{{$}}
-; CHECK-NEXT: ior (get_local 6), (get_local 5){{$}}
+; CHECK-NEXT: or (get_local 6), (get_local 5){{$}}
; CHECK-NEXT: set_local 7, pop{{$}}
; CHECK-NEXT: set_local 7, pop{{$}}
-; CHECK-NEXT: ior (get_local 4), (get_local 7){{$}}
+; CHECK-NEXT: or (get_local 4), (get_local 7){{$}}
; CHECK-NEXT: set_local 8, pop{{$}}
; CHECK-NEXT: return (get_local 8){{$}}
define i32 @ueq_f64(double %x, double %y) {
; CHECK-NEXT: set_local 8, pop{{$}}
; CHECK-NEXT: return (get_local 8){{$}}
define i32 @ueq_f64(double %x, double %y) {
; CHECK-NEXT: .param i32{{$}}
; CHECK-NEXT: .param i32{{$}}
; CHECK-NEXT: .result i32{{$}}
; CHECK-NEXT: .param i32{{$}}
; CHECK-NEXT: .param i32{{$}}
; CHECK-NEXT: .result i32{{$}}
; CHECK-NEXT: set_local 2, pop{{$}}
; CHECK-NEXT: get_local 0{{$}}
; CHECK-NEXT: set_local 3, pop{{$}}
; CHECK-NEXT: set_local 2, pop{{$}}
; CHECK-NEXT: get_local 0{{$}}
; CHECK-NEXT: set_local 3, pop{{$}}
-; CHECK-NEXT: ior (get_local 3), (get_local 2){{$}}
+; CHECK-NEXT: or (get_local 3), (get_local 2){{$}}
; CHECK-NEXT: set_local 4, pop{{$}}
; CHECK-NEXT: return (get_local 4){{$}}
; CHECK-NEXT: set_local 4, pop{{$}}
; CHECK-NEXT: return (get_local 4){{$}}
-define i32 @ior32(i32 %x, i32 %y) {
+define i32 @or32(i32 %x, i32 %y) {
%a = or i32 %x, %y
ret i32 %a
}
%a = or i32 %x, %y
ret i32 %a
}
; CHECK-NEXT: .param i64{{$}}
; CHECK-NEXT: .param i64{{$}}
; CHECK-NEXT: .result i64{{$}}
; CHECK-NEXT: .param i64{{$}}
; CHECK-NEXT: .param i64{{$}}
; CHECK-NEXT: .result i64{{$}}
; CHECK-NEXT: set_local 2, pop{{$}}
; CHECK-NEXT: get_local 0{{$}}
; CHECK-NEXT: set_local 3, pop{{$}}
; CHECK-NEXT: set_local 2, pop{{$}}
; CHECK-NEXT: get_local 0{{$}}
; CHECK-NEXT: set_local 3, pop{{$}}
-; CHECK-NEXT: ior (get_local 3), (get_local 2){{$}}
+; CHECK-NEXT: or (get_local 3), (get_local 2){{$}}
; CHECK-NEXT: set_local 4, pop{{$}}
; CHECK-NEXT: return (get_local 4){{$}}
; CHECK-NEXT: set_local 4, pop{{$}}
; CHECK-NEXT: return (get_local 4){{$}}
-define i64 @ior64(i64 %x, i64 %y) {
+define i64 @or64(i64 %x, i64 %y) {
%a = or i64 %x, %y
ret i64 %a
}
%a = or i64 %x, %y
ret i64 %a
}