1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
# RUN: llc %s -mattr=+fix-tn0013 -mtriple=sparc -run-pass=errata-workaround -o - \
# RUN: | FileCheck %s
---
# CHECK: $f0 = FSQRTS $f0
# CHECK-NEXT: NOP
# CHECK-NEXT: NOP
# CHECK-NEXT: $f3 = FADDS $f1, $f2
# CHECK-NEXT: $f3 = FADDS $f1, $f2
# CHECK-NEXT: $f0 = FDIVS $f4, $f5
name: er-8-1
body: |
bb.0.entry:
$f0 = FSQRTS $f0
$f3 = FADDS $f1, $f2
$f3 = FADDS $f1, $f2
$f0 = FDIVS $f4, $f5
---
# CHECK: $f0 = FDIVS $f0, $f0
# CHECK-NEXT: NOP
# CHECK-NEXT: $f3 = FADDS $f1, $f2
# CHECK-NEXT: $f3 = FADDS $f1, $f2
# CHECK-NEXT: $f3 = FADDS $f1, $f2
# CHECK-NEXT: $f0 = FSQRTS $f4
name: er-8-2
body: |
bb.0.entry:
$f0 = FDIVS $f0, $f0
$f3 = FADDS $f1, $f2
$f3 = FADDS $f1, $f2
$f3 = FADDS $f1, $f2
$f0 = FSQRTS $f4
---
# CHECK-NOT: NOP
name: er-9
body: |
bb.0.entry:
$f0 = FSQRTS $f0
$f3 = FADDS $f1, $f2
$f3 = FADDS $f0, $f2
$f3 = FADDS $f1, $f2
$f0 = FSQRTS $f0
---
# CHECK-NOT: NOP
name: er-10
body: |
bb.0.entry:
$f0 = FSQRTS $f0
$f4 = FSQRTS $f4
$f3 = FADDS $f1, $f2
$f0 = FSQRTS $f0
---
# CHECK: er-11
# CHECK: $f0 = FSQRTS $f0
# CHECK-NEXT: NOP
# CHECK: $f0 = FDIVS $f0, $f0
# CHECK-NEXT: NOP
name: er-11
body: |
bb.0.entry:
successors: %bb.3, %bb.1
$f0 = FSQRTS $f0
FBCOND %bb.3, 22, implicit $fcc0 {
NOP
}
bb.1:
successors: %bb.3, %bb.4
$f0 = FDIVS $f0, $f0
BCOND %bb.4, 10, implicit $icc {
NOP
}
bb.3:
NOP
bb.4:
NOP
---
# CHECK: $f1 = FDIVS $f0, $f1
# CHECK-NEXT: NOP
# CHECK-NEXT: STri $i6, -84, $i2
name: er-8-3
body: |
bb.0.entry:
$f1 = FDIVS $f0, $f1
STri $i6, -84, $i2
$f0 = LDFri $i6, -84
$f0 = FITOS $f0
$f5 = FDIVS $f4, $f0
...
|