OLD | NEW |
1 ; The NACLON test verifies that %r11 and %r11d are not used except as | 1 ; The NACLON test verifies that %r11 and %r11d are not used except as |
2 ; part of the return sequence. | 2 ; part of the return sequence. |
3 ; | 3 ; |
4 ; RUN: pnacl-llc -O2 -mtriple=x86_64-none-nacl < %s | \ | 4 ; RUN: pnacl-llc -O2 -mtriple=x86_64-none-nacl < %s | \ |
5 ; RUN: FileCheck %s --check-prefix=NACLON | 5 ; RUN: FileCheck %s --check-prefix=NACLON |
6 ; | 6 ; |
7 ; The NACLOFF test verifies that %r11 would normally be used if PNaCl | 7 ; The NACLOFF test verifies that %r11 would normally be used if PNaCl |
8 ; weren't reserving r11 for its own uses, to be sure NACLON is a | 8 ; weren't reserving r11 for its own uses, to be sure NACLON is a |
9 ; valid test. | 9 ; valid test. |
10 ; | 10 ; |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
53 %call15 = tail call i32 @GetValue() #2 | 53 %call15 = tail call i32 @GetValue() #2 |
54 tail call void @Use(i32 %call, i32 %call1, i32 %call2, i32 %call3, i32 %call4,
i32 %call5, i32 %call6, i32 %call7, i32 %call8, i32 %call9, i32 %call10, i32 %c
all11, i32 %call12, i32 %call13, i32 %call14, i32 %call15) #2 | 54 tail call void @Use(i32 %call, i32 %call1, i32 %call2, i32 %call3, i32 %call4,
i32 %call5, i32 %call6, i32 %call7, i32 %call8, i32 %call9, i32 %call10, i32 %c
all11, i32 %call12, i32 %call13, i32 %call14, i32 %call15) #2 |
55 tail call void @Use(i32 %call, i32 %call1, i32 %call2, i32 %call3, i32 %call4,
i32 %call5, i32 %call6, i32 %call7, i32 %call8, i32 %call9, i32 %call10, i32 %c
all11, i32 %call12, i32 %call13, i32 %call14, i32 %call15) #2 | 55 tail call void @Use(i32 %call, i32 %call1, i32 %call2, i32 %call3, i32 %call4,
i32 %call5, i32 %call6, i32 %call7, i32 %call8, i32 %call9, i32 %call10, i32 %c
all11, i32 %call12, i32 %call13, i32 %call14, i32 %call15) #2 |
56 %add = add nsw i32 %call1, %call | 56 %add = add nsw i32 %call1, %call |
57 %add16 = add nsw i32 %add, %call2 | 57 %add16 = add nsw i32 %add, %call2 |
58 %add17 = add nsw i32 %add16, %call3 | 58 %add17 = add nsw i32 %add16, %call3 |
59 %add18 = add nsw i32 %add17, %call4 | 59 %add18 = add nsw i32 %add17, %call4 |
60 %add19 = add nsw i32 %add18, %call5 | 60 %add19 = add nsw i32 %add18, %call5 |
61 %add20 = add nsw i32 %add19, %call6 | 61 %add20 = add nsw i32 %add19, %call6 |
62 %add21 = add nsw i32 %add20, %call7 | 62 %add21 = add nsw i32 %add20, %call7 |
63 store volatile i32 %add21, i32* @v1a, align 4, !tbaa !0 | 63 store volatile i32 %add21, i32* @v1a, align 4 |
64 %add22 = add nsw i32 %call9, %call8 | 64 %add22 = add nsw i32 %call9, %call8 |
65 %add23 = add nsw i32 %add22, %call10 | 65 %add23 = add nsw i32 %add22, %call10 |
66 %add24 = add nsw i32 %add23, %call11 | 66 %add24 = add nsw i32 %add23, %call11 |
67 %add25 = add nsw i32 %add24, %call12 | 67 %add25 = add nsw i32 %add24, %call12 |
68 %add26 = add nsw i32 %add25, %call13 | 68 %add26 = add nsw i32 %add25, %call13 |
69 %add27 = add nsw i32 %add26, %call14 | 69 %add27 = add nsw i32 %add26, %call14 |
70 %add28 = add nsw i32 %add27, %call15 | 70 %add28 = add nsw i32 %add27, %call15 |
71 store volatile i32 %add28, i32* @v1b, align 4, !tbaa !0 | 71 store volatile i32 %add28, i32* @v1b, align 4 |
72 %add32 = add nsw i32 %call8, %add17 | 72 %add32 = add nsw i32 %call8, %add17 |
73 %add33 = add nsw i32 %add32, %call9 | 73 %add33 = add nsw i32 %add32, %call9 |
74 %add34 = add nsw i32 %add33, %call10 | 74 %add34 = add nsw i32 %add33, %call10 |
75 %add35 = add nsw i32 %add34, %call11 | 75 %add35 = add nsw i32 %add34, %call11 |
76 store volatile i32 %add35, i32* @v2a, align 4, !tbaa !0 | 76 store volatile i32 %add35, i32* @v2a, align 4 |
77 %add36 = add nsw i32 %call5, %call4 | 77 %add36 = add nsw i32 %call5, %call4 |
78 %add37 = add nsw i32 %add36, %call6 | 78 %add37 = add nsw i32 %add36, %call6 |
79 %add38 = add nsw i32 %add37, %call7 | 79 %add38 = add nsw i32 %add37, %call7 |
80 %add39 = add nsw i32 %add38, %call12 | 80 %add39 = add nsw i32 %add38, %call12 |
81 %add40 = add nsw i32 %add39, %call13 | 81 %add40 = add nsw i32 %add39, %call13 |
82 %add41 = add nsw i32 %add40, %call14 | 82 %add41 = add nsw i32 %add40, %call14 |
83 %add42 = add nsw i32 %add41, %call15 | 83 %add42 = add nsw i32 %add41, %call15 |
84 store volatile i32 %add42, i32* @v2b, align 4, !tbaa !0 | 84 store volatile i32 %add42, i32* @v2b, align 4 |
85 %add44 = add nsw i32 %call4, %add | 85 %add44 = add nsw i32 %call4, %add |
86 %add45 = add nsw i32 %add44, %call5 | 86 %add45 = add nsw i32 %add44, %call5 |
87 %add46 = add nsw i32 %add45, %call8 | 87 %add46 = add nsw i32 %add45, %call8 |
88 %add47 = add nsw i32 %add46, %call9 | 88 %add47 = add nsw i32 %add46, %call9 |
89 %add48 = add nsw i32 %add47, %call12 | 89 %add48 = add nsw i32 %add47, %call12 |
90 %add49 = add nsw i32 %add48, %call13 | 90 %add49 = add nsw i32 %add48, %call13 |
91 store volatile i32 %add49, i32* @v3a, align 4, !tbaa !0 | 91 store volatile i32 %add49, i32* @v3a, align 4 |
92 %add50 = add nsw i32 %call3, %call2 | 92 %add50 = add nsw i32 %call3, %call2 |
93 %add51 = add nsw i32 %add50, %call6 | 93 %add51 = add nsw i32 %add50, %call6 |
94 %add52 = add nsw i32 %add51, %call7 | 94 %add52 = add nsw i32 %add51, %call7 |
95 %add53 = add nsw i32 %add52, %call10 | 95 %add53 = add nsw i32 %add52, %call10 |
96 %add54 = add nsw i32 %add53, %call11 | 96 %add54 = add nsw i32 %add53, %call11 |
97 %add55 = add nsw i32 %add54, %call14 | 97 %add55 = add nsw i32 %add54, %call14 |
98 %add56 = add nsw i32 %add55, %call15 | 98 %add56 = add nsw i32 %add55, %call15 |
99 store volatile i32 %add56, i32* @v3b, align 4, !tbaa !0 | 99 store volatile i32 %add56, i32* @v3b, align 4 |
100 %add57 = add nsw i32 %call2, %call | 100 %add57 = add nsw i32 %call2, %call |
101 %add58 = add nsw i32 %add57, %call4 | 101 %add58 = add nsw i32 %add57, %call4 |
102 %add59 = add nsw i32 %add58, %call6 | 102 %add59 = add nsw i32 %add58, %call6 |
103 %add60 = add nsw i32 %add59, %call8 | 103 %add60 = add nsw i32 %add59, %call8 |
104 %add61 = add nsw i32 %add60, %call10 | 104 %add61 = add nsw i32 %add60, %call10 |
105 %add62 = add nsw i32 %add61, %call12 | 105 %add62 = add nsw i32 %add61, %call12 |
106 %add63 = add nsw i32 %add62, %call14 | 106 %add63 = add nsw i32 %add62, %call14 |
107 store volatile i32 %add63, i32* @v4a, align 4, !tbaa !0 | 107 store volatile i32 %add63, i32* @v4a, align 4 |
108 %add64 = add nsw i32 %call3, %call1 | 108 %add64 = add nsw i32 %call3, %call1 |
109 %add65 = add nsw i32 %add64, %call5 | 109 %add65 = add nsw i32 %add64, %call5 |
110 %add66 = add nsw i32 %add65, %call7 | 110 %add66 = add nsw i32 %add65, %call7 |
111 %add67 = add nsw i32 %add66, %call9 | 111 %add67 = add nsw i32 %add66, %call9 |
112 %add68 = add nsw i32 %add67, %call11 | 112 %add68 = add nsw i32 %add67, %call11 |
113 %add69 = add nsw i32 %add68, %call13 | 113 %add69 = add nsw i32 %add68, %call13 |
114 %add70 = add nsw i32 %add69, %call15 | 114 %add70 = add nsw i32 %add69, %call15 |
115 store volatile i32 %add70, i32* @v4b, align 4, !tbaa !0 | 115 store volatile i32 %add70, i32* @v4b, align 4 |
116 tail call void @Use(i32 %call, i32 %call1, i32 %call2, i32 %call3, i32 %call4,
i32 %call5, i32 %call6, i32 %call7, i32 %call8, i32 %call9, i32 %call10, i32 %c
all11, i32 %call12, i32 %call13, i32 %call14, i32 %call15) #2 | 116 tail call void @Use(i32 %call, i32 %call1, i32 %call2, i32 %call3, i32 %call4,
i32 %call5, i32 %call6, i32 %call7, i32 %call8, i32 %call9, i32 %call10, i32 %c
all11, i32 %call12, i32 %call13, i32 %call14, i32 %call15) #2 |
117 tail call void @Use(i32 %call, i32 %call1, i32 %call2, i32 %call3, i32 %call4,
i32 %call5, i32 %call6, i32 %call7, i32 %call8, i32 %call9, i32 %call10, i32 %c
all11, i32 %call12, i32 %call13, i32 %call14, i32 %call15) #2 | 117 tail call void @Use(i32 %call, i32 %call1, i32 %call2, i32 %call3, i32 %call4,
i32 %call5, i32 %call6, i32 %call7, i32 %call8, i32 %call9, i32 %call10, i32 %c
all11, i32 %call12, i32 %call13, i32 %call14, i32 %call15) #2 |
118 ret void | 118 ret void |
119 } | 119 } |
120 | 120 |
121 declare i32 @GetValue() #1 | 121 declare i32 @GetValue() #1 |
122 | 122 |
123 declare void @Use(i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i3
2, i32, i32, i32) #1 | 123 declare void @Use(i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i3
2, i32, i32, i32) #1 |
124 | 124 |
125 attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"=
"true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nan
s-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" } | 125 attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"=
"true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nan
s-fp-math"="false" "unsafe-fp-math"="false" "use-soft-float"="false" } |
126 attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "n
o-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math
"="false" "unsafe-fp-math"="false" "use-soft-float"="false" } | 126 attributes #1 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "n
o-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math
"="false" "unsafe-fp-math"="false" "use-soft-float"="false" } |
127 attributes #2 = { nounwind } | 127 attributes #2 = { nounwind } |
128 | |
129 !0 = metadata !{metadata !"int", metadata !1} | |
130 !1 = metadata !{metadata !"omnipotent char", metadata !2} | |
131 !2 = metadata !{metadata !"Simple C/C++ TBAA"} | |
OLD | NEW |