~pali/+junk/llvm-toolchain-3.7

« back to all changes in this revision

Viewing changes to test/CodeGen/Mips/llvm-ir/xor.ll

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2015-07-15 17:51:08 UTC
  • Revision ID: package-import@ubuntu.com-20150715175108-l8mynwovkx4zx697
Tags: upstream-3.7~+rc2
ImportĀ upstreamĀ versionĀ 3.7~+rc2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
; RUN: llc < %s -march=mips -mcpu=mips2 | FileCheck %s \
 
2
; RUN:    -check-prefix=ALL -check-prefix=GP32
 
3
; RUN: llc < %s -march=mips -mcpu=mips32 | FileCheck %s \
 
4
; RUN:    -check-prefix=ALL -check-prefix=GP32
 
5
; RUN: llc < %s -march=mips -mcpu=mips32r2 | FileCheck %s \
 
6
; RUN:    -check-prefix=ALL -check-prefix=GP32
 
7
; RUN: llc < %s -march=mips -mcpu=mips32r3 | FileCheck %s \
 
8
; RUN:    -check-prefix=ALL -check-prefix=GP32
 
9
; RUN: llc < %s -march=mips -mcpu=mips32r5 | FileCheck %s \
 
10
; RUN:    -check-prefix=ALL -check-prefix=GP32
 
11
; RUN: llc < %s -march=mips -mcpu=mips32r6 | FileCheck %s \
 
12
; RUN:    -check-prefix=ALL -check-prefix=GP32
 
13
; RUN: llc < %s -march=mips64 -mcpu=mips3 | FileCheck %s \
 
14
; RUN:    -check-prefix=ALL -check-prefix=GP64
 
15
; RUN: llc < %s -march=mips64 -mcpu=mips4 | FileCheck %s \
 
16
; RUN:    -check-prefix=ALL -check-prefix=GP64
 
17
; RUN: llc < %s -march=mips64 -mcpu=mips64 | FileCheck %s \
 
18
; RUN:    -check-prefix=ALL -check-prefix=GP64
 
19
; RUN: llc < %s -march=mips64 -mcpu=mips64r2 | FileCheck %s \
 
20
; RUN:    -check-prefix=ALL -check-prefix=GP64
 
21
; RUN: llc < %s -march=mips64 -mcpu=mips64r3 | FileCheck %s \
 
22
; RUN:    -check-prefix=ALL -check-prefix=GP64
 
23
; RUN: llc < %s -march=mips64 -mcpu=mips64r5 | FileCheck %s \
 
24
; RUN:    -check-prefix=ALL -check-prefix=GP64
 
25
; RUN: llc < %s -march=mips64 -mcpu=mips64r6 | FileCheck %s \
 
26
; RUN:    -check-prefix=ALL -check-prefix=GP64
 
27
 
 
28
define signext i1 @xor_i1(i1 signext %a, i1 signext %b) {
 
29
entry:
 
30
; ALL-LABEL: xor_i1:
 
31
 
 
32
  ; ALL:          xor     $2, $4, $5
 
33
 
 
34
  %r = xor i1 %a, %b
 
35
  ret i1 %r
 
36
}
 
37
 
 
38
define signext i8 @xor_i8(i8 signext %a, i8 signext %b) {
 
39
entry:
 
40
; ALL-LABEL: xor_i8:
 
41
 
 
42
  ; ALL:          xor     $2, $4, $5
 
43
 
 
44
  %r = xor i8 %a, %b
 
45
  ret i8 %r
 
46
}
 
47
 
 
48
define signext i16 @xor_i16(i16 signext %a, i16 signext %b) {
 
49
entry:
 
50
; ALL-LABEL: xor_i16:
 
51
 
 
52
  ; ALL:          xor     $2, $4, $5
 
53
 
 
54
  %r = xor i16 %a, %b
 
55
  ret i16 %r
 
56
}
 
57
 
 
58
define signext i32 @xor_i32(i32 signext %a, i32 signext %b) {
 
59
entry:
 
60
; ALL-LABEL: xor_i32:
 
61
 
 
62
  ; ALL:          xor     $2, $4, $5
 
63
 
 
64
  %r = xor i32 %a, %b
 
65
  ret i32 %r
 
66
}
 
67
 
 
68
define signext i64 @xor_i64(i64 signext %a, i64 signext %b) {
 
69
entry:
 
70
; ALL-LABEL: xor_i64:
 
71
 
 
72
  ; GP32:         xor     $2, $4, $6
 
73
  ; GP32:         xor     $3, $5, $7
 
74
 
 
75
  ; GP64:         xor     $2, $4, $5
 
76
 
 
77
  %r = xor i64 %a, %b
 
78
  ret i64 %r
 
79
}
 
80
 
 
81
define signext i128 @xor_i128(i128 signext %a, i128 signext %b) {
 
82
entry:
 
83
; ALL-LABEL: xor_i128:
 
84
 
 
85
  ; GP32:         lw      $[[T0:[0-9]+]], 24($sp)
 
86
  ; GP32:         lw      $[[T1:[0-9]+]], 20($sp)
 
87
  ; GP32:         lw      $[[T2:[0-9]+]], 16($sp)
 
88
  ; GP32:         xor     $2, $4, $[[T2]]
 
89
  ; GP32:         xor     $3, $5, $[[T1]]
 
90
  ; GP32:         xor     $4, $6, $[[T0]]
 
91
  ; GP32:         lw      $[[T3:[0-9]+]], 28($sp)
 
92
  ; GP32:         xor     $5, $7, $[[T3]]
 
93
 
 
94
  ; GP64:         xor     $2, $4, $6
 
95
  ; GP64:         xor     $3, $5, $7
 
96
 
 
97
  %r = xor i128 %a, %b
 
98
  ret i128 %r
 
99
}