Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(24)

Side by Side Diff: tests_lit/llvm2ice_tests/64bit.pnacl.ll

Issue 1407143002: Merge compares and branches (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 ; This tries to be a comprehensive test of i64 operations, in 1 ; This tries to be a comprehensive test of i64 operations, in
2 ; particular the patterns for lowering i64 operations into constituent 2 ; particular the patterns for lowering i64 operations into constituent
3 ; i32 operations on x86-32. 3 ; i32 operations on x86-32.
4 4
5 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \ 5 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \
6 ; RUN: --target x8632 -i %s --args -O2 -allow-externally-defined-symbols \ 6 ; RUN: --target x8632 -i %s --args -O2 -allow-externally-defined-symbols \
7 ; RUN: | %if --need=target_X8632 --command FileCheck %s 7 ; RUN: | %if --need=target_X8632 --command FileCheck %s
8 8
9 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \ 9 ; RUN: %if --need=target_X8632 --command %p2i --filetype=obj --disassemble \
10 ; RUN: --target x8632 -i %s --args -Om1 -allow-externally-defined-symbols \ 10 ; RUN: --target x8632 -i %s --args -Om1 -allow-externally-defined-symbols \
(...skipping 998 matching lines...) Expand 10 before | Expand all | Expand 10 after
1009 1009
1010 if.then2: ; preds = %if.end 1010 if.then2: ; preds = %if.end
1011 call void @func() 1011 call void @func()
1012 br label %if.end3 1012 br label %if.end3
1013 1013
1014 if.end3: ; preds = %if.then2, %if.end 1014 if.end3: ; preds = %if.then2, %if.end
1015 ret void 1015 ret void
1016 } 1016 }
1017 ; CHECK-LABEL: icmpEq64 1017 ; CHECK-LABEL: icmpEq64
1018 ; CHECK: jne 1018 ; CHECK: jne
1019 ; CHECK: je
Jim Stichnoth 2015/10/16 13:58:11 Here and below, I think it would be better to repl
sehr 2015/10/16 18:10:22 I've tightened the patterns for both O2 and Om1.
1020 ; CHECK: call 1019 ; CHECK: call
1021 ; CHECK: jne 1020 ; CHECK: jne
1022 ; CHECK: je
1023 ; CHECK: call 1021 ; CHECK: call
1024 ; 1022 ;
1025 ; OPTM1-LABEL: icmpEq64 1023 ; OPTM1-LABEL: icmpEq64
1026 ; OPTM1: jne 1024 ; OPTM1: jne
1027 ; OPTM1: je 1025 ; OPTM1: je
1028 ; OPTM1: call 1026 ; OPTM1: call
1029 ; OPTM1: jne 1027 ; OPTM1: jne
1030 ; OPTM1: je 1028 ; OPTM1: je
1031 ; OPTM1: call 1029 ; OPTM1: call
1032 1030
(...skipping 26 matching lines...) Expand all
1059 1057
1060 if.then2: ; preds = %if.end 1058 if.then2: ; preds = %if.end
1061 call void @func() 1059 call void @func()
1062 br label %if.end3 1060 br label %if.end3
1063 1061
1064 if.end3: ; preds = %if.end, %if.then2 1062 if.end3: ; preds = %if.end, %if.then2
1065 ret void 1063 ret void
1066 } 1064 }
1067 ; CHECK-LABEL: icmpNe64 1065 ; CHECK-LABEL: icmpNe64
1068 ; CHECK: jne 1066 ; CHECK: jne
1069 ; CHECK: jne
1070 ; CHECK: call 1067 ; CHECK: call
1071 ; CHECK: jne 1068 ; CHECK: jne
1072 ; CHECK: jne
1073 ; CHECK: call 1069 ; CHECK: call
1074 ; 1070 ;
1075 ; OPTM1-LABEL: icmpNe64 1071 ; OPTM1-LABEL: icmpNe64
1076 ; OPTM1: jne 1072 ; OPTM1: jne
1077 ; OPTM1: jne 1073 ; OPTM1: jne
1078 ; OPTM1: call 1074 ; OPTM1: call
1079 ; OPTM1: jne 1075 ; OPTM1: jne
1080 ; OPTM1: jne 1076 ; OPTM1: jne
1081 ; OPTM1: call 1077 ; OPTM1: call
1082 1078
(...skipping 25 matching lines...) Expand all
1108 if.then2: ; preds = %if.end 1104 if.then2: ; preds = %if.end
1109 call void @func() 1105 call void @func()
1110 br label %if.end3 1106 br label %if.end3
1111 1107
1112 if.end3: ; preds = %if.then2, %if.end 1108 if.end3: ; preds = %if.then2, %if.end
1113 ret void 1109 ret void
1114 } 1110 }
1115 ; CHECK-LABEL: icmpGt64 1111 ; CHECK-LABEL: icmpGt64
1116 ; CHECK: ja 1112 ; CHECK: ja
1117 ; CHECK: jb 1113 ; CHECK: jb
1118 ; CHECK: ja 1114 ; CHECK: jbe
1119 ; CHECK: call 1115 ; CHECK: call
1120 ; CHECK: jg 1116 ; CHECK: jg
1121 ; CHECK: jl 1117 ; CHECK: jl
1122 ; CHECK: ja 1118 ; CHECK: jbe
1123 ; CHECK: call 1119 ; CHECK: call
1124 ; 1120 ;
1125 ; OPTM1-LABEL: icmpGt64 1121 ; OPTM1-LABEL: icmpGt64
1126 ; OPTM1: ja 1122 ; OPTM1: ja
1127 ; OPTM1: jb 1123 ; OPTM1: jb
1128 ; OPTM1: ja 1124 ; OPTM1: ja
1129 ; OPTM1: call 1125 ; OPTM1: call
1130 ; OPTM1: jg 1126 ; OPTM1: jg
1131 ; OPTM1: jl 1127 ; OPTM1: jl
1132 ; OPTM1: ja 1128 ; OPTM1: ja
(...skipping 27 matching lines...) Expand all
1160 if.then2: ; preds = %if.end 1156 if.then2: ; preds = %if.end
1161 call void @func() 1157 call void @func()
1162 br label %if.end3 1158 br label %if.end3
1163 1159
1164 if.end3: ; preds = %if.end, %if.then2 1160 if.end3: ; preds = %if.end, %if.then2
1165 ret void 1161 ret void
1166 } 1162 }
1167 ; CHECK-LABEL: icmpGe64 1163 ; CHECK-LABEL: icmpGe64
1168 ; CHECK: ja 1164 ; CHECK: ja
1169 ; CHECK: jb 1165 ; CHECK: jb
1170 ; CHECK: jae 1166 ; CHECK: jb
1171 ; CHECK: call 1167 ; CHECK: call
1172 ; CHECK: jg 1168 ; CHECK: jg
1173 ; CHECK: jl 1169 ; CHECK: jl
1174 ; CHECK: jae 1170 ; CHECK: jb
1175 ; CHECK: call 1171 ; CHECK: call
1176 ; 1172 ;
1177 ; OPTM1-LABEL: icmpGe64 1173 ; OPTM1-LABEL: icmpGe64
1178 ; OPTM1: ja 1174 ; OPTM1: ja
1179 ; OPTM1: jb 1175 ; OPTM1: jb
1180 ; OPTM1: jae 1176 ; OPTM1: jae
1181 ; OPTM1: call 1177 ; OPTM1: call
1182 ; OPTM1: jg 1178 ; OPTM1: jg
1183 ; OPTM1: jl 1179 ; OPTM1: jl
1184 ; OPTM1: jae 1180 ; OPTM1: jae
(...skipping 27 matching lines...) Expand all
1212 if.then2: ; preds = %if.end 1208 if.then2: ; preds = %if.end
1213 call void @func() 1209 call void @func()
1214 br label %if.end3 1210 br label %if.end3
1215 1211
1216 if.end3: ; preds = %if.then2, %if.end 1212 if.end3: ; preds = %if.then2, %if.end
1217 ret void 1213 ret void
1218 } 1214 }
1219 ; CHECK-LABEL: icmpLt64 1215 ; CHECK-LABEL: icmpLt64
1220 ; CHECK: jb 1216 ; CHECK: jb
1221 ; CHECK: ja 1217 ; CHECK: ja
1222 ; CHECK: jb 1218 ; CHECK: jae
1223 ; CHECK: call 1219 ; CHECK: call
1224 ; CHECK: jl 1220 ; CHECK: jl
1225 ; CHECK: jg 1221 ; CHECK: jg
1226 ; CHECK: jb 1222 ; CHECK: jae
1227 ; CHECK: call 1223 ; CHECK: call
1228 ; 1224 ;
1229 ; OPTM1-LABEL: icmpLt64 1225 ; OPTM1-LABEL: icmpLt64
1230 ; OPTM1: jb 1226 ; OPTM1: jb
1231 ; OPTM1: ja 1227 ; OPTM1: ja
1232 ; OPTM1: jb 1228 ; OPTM1: jb
1233 ; OPTM1: call 1229 ; OPTM1: call
1234 ; OPTM1: jl 1230 ; OPTM1: jl
1235 ; OPTM1: jg 1231 ; OPTM1: jg
1236 ; OPTM1: jb 1232 ; OPTM1: jb
(...skipping 27 matching lines...) Expand all
1264 if.then2: ; preds = %if.end 1260 if.then2: ; preds = %if.end
1265 call void @func() 1261 call void @func()
1266 br label %if.end3 1262 br label %if.end3
1267 1263
1268 if.end3: ; preds = %if.end, %if.then2 1264 if.end3: ; preds = %if.end, %if.then2
1269 ret void 1265 ret void
1270 } 1266 }
1271 ; CHECK-LABEL: icmpLe64 1267 ; CHECK-LABEL: icmpLe64
1272 ; CHECK: jb 1268 ; CHECK: jb
1273 ; CHECK: ja 1269 ; CHECK: ja
1274 ; CHECK: jbe 1270 ; CHECK: ja
1275 ; CHECK: call 1271 ; CHECK: call
1276 ; CHECK: jl 1272 ; CHECK: jl
1277 ; CHECK: jg 1273 ; CHECK: jg
1278 ; CHECK: jbe 1274 ; CHECK: ja
1279 ; CHECK: call 1275 ; CHECK: call
1280 ; 1276 ;
1281 ; OPTM1-LABEL: icmpLe64 1277 ; OPTM1-LABEL: icmpLe64
1282 ; OPTM1: jb 1278 ; OPTM1: jb
1283 ; OPTM1: ja 1279 ; OPTM1: ja
1284 ; OPTM1: jbe 1280 ; OPTM1: jbe
1285 ; OPTM1: call 1281 ; OPTM1: call
1286 ; OPTM1: jl 1282 ; OPTM1: jl
1287 ; OPTM1: jg 1283 ; OPTM1: jg
1288 ; OPTM1: jbe 1284 ; OPTM1: jbe
(...skipping 521 matching lines...) Expand 10 before | Expand all | Expand 10 after
1810 ; CHECK-LABEL: phi64Undef 1806 ; CHECK-LABEL: phi64Undef
1811 ; CHECK: mov {{.*}},0x0 1807 ; CHECK: mov {{.*}},0x0
1812 ; CHECK: mov {{.*}},0x0 1808 ; CHECK: mov {{.*}},0x0
1813 ; OPTM1-LABEL: phi64Undef 1809 ; OPTM1-LABEL: phi64Undef
1814 ; OPTM1: mov {{.*}},0x0 1810 ; OPTM1: mov {{.*}},0x0
1815 ; OPTM1: mov {{.*}},0x0 1811 ; OPTM1: mov {{.*}},0x0
1816 ; ARM32-LABEL: phi64Undef 1812 ; ARM32-LABEL: phi64Undef
1817 ; ARM32: mov {{.*}} #0 1813 ; ARM32: mov {{.*}} #0
1818 ; ARM32: mov {{.*}} #0 1814 ; ARM32: mov {{.*}} #0
1819 1815
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698