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

Side by Side Diff: test/cctest/test-disasm-a64.cc

Issue 148503002: A64: Synchronize with r15545. (Closed) Base URL: https://v8.googlecode.com/svn/branches/experimental/a64
Patch Set: Created 6 years, 11 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 | Annotate | Revision Log
« no previous file with comments | « test/cctest/test-debug.cc ('k') | test/cctest/test-double.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 275
276 COMPARE(add(w1, wcsp, Operand(8)), "add w1, wcsp, #0x8 (8)"); 276 COMPARE(add(w1, wcsp, Operand(8)), "add w1, wcsp, #0x8 (8)");
277 COMPARE(add(x2, csp, Operand(16)), "add x2, csp, #0x10 (16)"); 277 COMPARE(add(x2, csp, Operand(16)), "add x2, csp, #0x10 (16)");
278 COMPARE(add(wcsp, wcsp, Operand(42)), "add wcsp, wcsp, #0x2a (42)"); 278 COMPARE(add(wcsp, wcsp, Operand(42)), "add wcsp, wcsp, #0x2a (42)");
279 COMPARE(cmn(csp, Operand(24)), "cmn csp, #0x18 (24)"); 279 COMPARE(cmn(csp, Operand(24)), "cmn csp, #0x18 (24)");
280 COMPARE(adds(wzr, wcsp, Operand(9)), "cmn wcsp, #0x9 (9)"); 280 COMPARE(adds(wzr, wcsp, Operand(9)), "cmn wcsp, #0x9 (9)");
281 281
282 CLEANUP(); 282 CLEANUP();
283 } 283 }
284 284
285
285 TEST_(sub_immediate) { 286 TEST_(sub_immediate) {
286 SET_UP(); 287 SET_UP();
287 288
288 COMPARE(sub(w0, w1, Operand(0xff)), "sub w0, w1, #0xff (255)"); 289 COMPARE(sub(w0, w1, Operand(0xff)), "sub w0, w1, #0xff (255)");
289 COMPARE(sub(x2, x3, Operand(0x3ff)), "sub x2, x3, #0x3ff (1023)"); 290 COMPARE(sub(x2, x3, Operand(0x3ff)), "sub x2, x3, #0x3ff (1023)");
290 COMPARE(sub(w4, w5, Operand(0xfff)), "sub w4, w5, #0xfff (4095)"); 291 COMPARE(sub(w4, w5, Operand(0xfff)), "sub w4, w5, #0xfff (4095)");
291 COMPARE(sub(x6, x7, Operand(0x1000)), "sub x6, x7, #0x1000 (4096)"); 292 COMPARE(sub(x6, x7, Operand(0x1000)), "sub x6, x7, #0x1000 (4096)");
292 COMPARE(sub(w8, w9, Operand(0xff000)), "sub w8, w9, #0xff000 (1044480)"); 293 COMPARE(sub(w8, w9, Operand(0xff000)), "sub w8, w9, #0xff000 (1044480)");
293 COMPARE(sub(x10, x11, Operand(0x3ff000)), 294 COMPARE(sub(x10, x11, Operand(0x3ff000)),
294 "sub x10, x11, #0x3ff000 (4190208)"); 295 "sub x10, x11, #0x3ff000 (4190208)");
(...skipping 472 matching lines...) Expand 10 before | Expand all | Expand 10 after
767 COMPARE(lsrv(w6, w7, w8), "lsr w6, w7, w8"); 768 COMPARE(lsrv(w6, w7, w8), "lsr w6, w7, w8");
768 COMPARE(lsrv(x9, x10, x11), "lsr x9, x10, x11"); 769 COMPARE(lsrv(x9, x10, x11), "lsr x9, x10, x11");
769 COMPARE(asrv(w12, w13, w14), "asr w12, w13, w14"); 770 COMPARE(asrv(w12, w13, w14), "asr w12, w13, w14");
770 COMPARE(asrv(x15, x16, x17), "asr x15, x16, x17"); 771 COMPARE(asrv(x15, x16, x17), "asr x15, x16, x17");
771 COMPARE(rorv(w18, w19, w20), "ror w18, w19, w20"); 772 COMPARE(rorv(w18, w19, w20), "ror w18, w19, w20");
772 COMPARE(rorv(x21, x22, x23), "ror x21, x22, x23"); 773 COMPARE(rorv(x21, x22, x23), "ror x21, x22, x23");
773 774
774 CLEANUP(); 775 CLEANUP();
775 } 776 }
776 777
778
777 TEST_(adr) { 779 TEST_(adr) {
778 SET_UP(); 780 SET_UP();
779 781
780 COMPARE(adr(x0, 0), "adr x0, #+0x0"); 782 COMPARE(adr(x0, 0), "adr x0, #+0x0");
781 COMPARE(adr(x1, 1), "adr x1, #+0x1"); 783 COMPARE(adr(x1, 1), "adr x1, #+0x1");
782 COMPARE(adr(x2, -1), "adr x2, #-0x1"); 784 COMPARE(adr(x2, -1), "adr x2, #-0x1");
783 COMPARE(adr(x3, 4), "adr x3, #+0x4"); 785 COMPARE(adr(x3, 4), "adr x3, #+0x4");
784 COMPARE(adr(x4, -4), "adr x4, #-0x4"); 786 COMPARE(adr(x4, -4), "adr x4, #-0x4");
785 COMPARE(adr(x5, 0x000fffff), "adr x5, #+0xfffff"); 787 COMPARE(adr(x5, 0x000fffff), "adr x5, #+0xfffff");
786 COMPARE(adr(x6, -0x00100000), "adr x6, #-0x100000"); 788 COMPARE(adr(x6, -0x00100000), "adr x6, #-0x100000");
787 COMPARE(adr(xzr, 0), "adr xzr, #+0x0"); 789 COMPARE(adr(xzr, 0), "adr xzr, #+0x0");
788 790
789 CLEANUP(); 791 CLEANUP();
790 } 792 }
791 793
794
792 TEST_(branch) { 795 TEST_(branch) {
793 SET_UP(); 796 SET_UP();
794 797
795 #define INST_OFF(x) ((x) >> kInstructionSizeLog2) 798 #define INST_OFF(x) ((x) >> kInstructionSizeLog2)
796 COMPARE(b(INST_OFF(0x4)), "b #+0x4"); 799 COMPARE(b(INST_OFF(0x4)), "b #+0x4");
797 COMPARE(b(INST_OFF(-0x4)), "b #-0x4"); 800 COMPARE(b(INST_OFF(-0x4)), "b #-0x4");
798 COMPARE(b(INST_OFF(0x7fffffc)), "b #+0x7fffffc"); 801 COMPARE(b(INST_OFF(0x7fffffc)), "b #+0x7fffffc");
799 COMPARE(b(INST_OFF(-0x8000000)), "b #-0x8000000"); 802 COMPARE(b(INST_OFF(-0x8000000)), "b #-0x8000000");
800 COMPARE(b(INST_OFF(0xffffc), eq), "b.eq #+0xffffc"); 803 COMPARE(b(INST_OFF(0xffffc), eq), "b.eq #+0xffffc");
801 COMPARE(b(INST_OFF(-0x100000), mi), "b.mi #-0x100000"); 804 COMPARE(b(INST_OFF(-0x100000), mi), "b.mi #-0x100000");
(...skipping 16 matching lines...) Expand all
818 COMPARE(tbnz(x11, 31, INST_OFF(0x4)), "tbnz w11, #31, #+0x4"); 821 COMPARE(tbnz(x11, 31, INST_OFF(0x4)), "tbnz w11, #31, #+0x4");
819 COMPARE(tbnz(x12, 32, INST_OFF(0x8)), "tbnz x12, #32, #+0x8"); 822 COMPARE(tbnz(x12, 32, INST_OFF(0x8)), "tbnz x12, #32, #+0x8");
820 COMPARE(br(x0), "br x0"); 823 COMPARE(br(x0), "br x0");
821 COMPARE(blr(x1), "blr x1"); 824 COMPARE(blr(x1), "blr x1");
822 COMPARE(ret(x2), "ret x2"); 825 COMPARE(ret(x2), "ret x2");
823 COMPARE(ret(lr), "ret") 826 COMPARE(ret(lr), "ret")
824 827
825 CLEANUP(); 828 CLEANUP();
826 } 829 }
827 830
831
828 TEST_(load_store) { 832 TEST_(load_store) {
829 SET_UP(); 833 SET_UP();
830 834
831 COMPARE(ldr(w0, MemOperand(x1)), "ldr w0, [x1]"); 835 COMPARE(ldr(w0, MemOperand(x1)), "ldr w0, [x1]");
832 COMPARE(ldr(w2, MemOperand(x3, 4)), "ldr w2, [x3, #4]"); 836 COMPARE(ldr(w2, MemOperand(x3, 4)), "ldr w2, [x3, #4]");
833 COMPARE(ldr(w4, MemOperand(x5, 16380)), "ldr w4, [x5, #16380]"); 837 COMPARE(ldr(w4, MemOperand(x5, 16380)), "ldr w4, [x5, #16380]");
834 COMPARE(ldr(x6, MemOperand(x7)), "ldr x6, [x7]"); 838 COMPARE(ldr(x6, MemOperand(x7)), "ldr x6, [x7]");
835 COMPARE(ldr(x8, MemOperand(x9, 8)), "ldr x8, [x9, #8]"); 839 COMPARE(ldr(x8, MemOperand(x9, 8)), "ldr x8, [x9, #8]");
836 COMPARE(ldr(x10, MemOperand(x11, 32760)), "ldr x10, [x11, #32760]"); 840 COMPARE(ldr(x10, MemOperand(x11, 32760)), "ldr x10, [x11, #32760]");
837 COMPARE(str(w12, MemOperand(x13)), "str w12, [x13]"); 841 COMPARE(str(w12, MemOperand(x13)), "str w12, [x13]");
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
1112 COMPARE(ldrsb(w4, MemOperand(x5, -3)), "ldursb w4, [x5, #-3]"); 1116 COMPARE(ldrsb(w4, MemOperand(x5, -3)), "ldursb w4, [x5, #-3]");
1113 COMPARE(ldrsb(x6, MemOperand(x7, -4)), "ldursb x6, [x7, #-4]"); 1117 COMPARE(ldrsb(x6, MemOperand(x7, -4)), "ldursb x6, [x7, #-4]");
1114 COMPARE(ldrh(w8, MemOperand(x9, -5)), "ldurh w8, [x9, #-5]"); 1118 COMPARE(ldrh(w8, MemOperand(x9, -5)), "ldurh w8, [x9, #-5]");
1115 COMPARE(ldrsh(w10, MemOperand(x11, -6)), "ldursh w10, [x11, #-6]"); 1119 COMPARE(ldrsh(w10, MemOperand(x11, -6)), "ldursh w10, [x11, #-6]");
1116 COMPARE(ldrsh(x12, MemOperand(x13, -7)), "ldursh x12, [x13, #-7]"); 1120 COMPARE(ldrsh(x12, MemOperand(x13, -7)), "ldursh x12, [x13, #-7]");
1117 COMPARE(ldrsw(x14, MemOperand(x15, -8)), "ldursw x14, [x15, #-8]"); 1121 COMPARE(ldrsw(x14, MemOperand(x15, -8)), "ldursw x14, [x15, #-8]");
1118 1122
1119 CLEANUP(); 1123 CLEANUP();
1120 } 1124 }
1121 1125
1126
1122 TEST_(load_store_pair) { 1127 TEST_(load_store_pair) {
1123 SET_UP(); 1128 SET_UP();
1124 1129
1125 COMPARE(ldp(w0, w1, MemOperand(x2)), "ldp w0, w1, [x2]"); 1130 COMPARE(ldp(w0, w1, MemOperand(x2)), "ldp w0, w1, [x2]");
1126 COMPARE(ldp(x3, x4, MemOperand(x5)), "ldp x3, x4, [x5]"); 1131 COMPARE(ldp(x3, x4, MemOperand(x5)), "ldp x3, x4, [x5]");
1127 COMPARE(ldp(w6, w7, MemOperand(x8, 4)), "ldp w6, w7, [x8, #4]"); 1132 COMPARE(ldp(w6, w7, MemOperand(x8, 4)), "ldp w6, w7, [x8, #4]");
1128 COMPARE(ldp(x9, x10, MemOperand(x11, 8)), "ldp x9, x10, [x11, #8]"); 1133 COMPARE(ldp(x9, x10, MemOperand(x11, 8)), "ldp x9, x10, [x11, #8]");
1129 COMPARE(ldp(w12, w13, MemOperand(x14, 252)), "ldp w12, w13, [x14, #252]"); 1134 COMPARE(ldp(w12, w13, MemOperand(x14, 252)), "ldp w12, w13, [x14, #252]");
1130 COMPARE(ldp(x15, x16, MemOperand(x17, 504)), "ldp x15, x16, [x17, #504]"); 1135 COMPARE(ldp(x15, x16, MemOperand(x17, 504)), "ldp x15, x16, [x17, #504]");
1131 COMPARE(ldp(w18, w19, MemOperand(x20, -256)), "ldp w18, w19, [x20, #-256]"); 1136 COMPARE(ldp(w18, w19, MemOperand(x20, -256)), "ldp w18, w19, [x20, #-256]");
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
1231 COMPARE(ldpsw(x0, x1, MemOperand(x2)), "ldpsw x0, x1, [x2]"); 1236 COMPARE(ldpsw(x0, x1, MemOperand(x2)), "ldpsw x0, x1, [x2]");
1232 COMPARE(ldpsw(x3, x4, MemOperand(x5, 16)), "ldpsw x3, x4, [x5, #16]"); 1237 COMPARE(ldpsw(x3, x4, MemOperand(x5, 16)), "ldpsw x3, x4, [x5, #16]");
1233 COMPARE(ldpsw(x6, x7, MemOperand(x8, -32, PreIndex)), 1238 COMPARE(ldpsw(x6, x7, MemOperand(x8, -32, PreIndex)),
1234 "ldpsw x6, x7, [x8, #-32]!"); 1239 "ldpsw x6, x7, [x8, #-32]!");
1235 COMPARE(ldpsw(x9, x10, MemOperand(x11, 128, PostIndex)), 1240 COMPARE(ldpsw(x9, x10, MemOperand(x11, 128, PostIndex)),
1236 "ldpsw x9, x10, [x11], #128"); 1241 "ldpsw x9, x10, [x11], #128");
1237 1242
1238 CLEANUP(); 1243 CLEANUP();
1239 } 1244 }
1240 1245
1246
1241 TEST_(load_store_pair_nontemp) { 1247 TEST_(load_store_pair_nontemp) {
1242 SET_UP(); 1248 SET_UP();
1243 1249
1244 COMPARE(ldnp(w0, w1, MemOperand(x2)), "ldnp w0, w1, [x2]"); 1250 COMPARE(ldnp(w0, w1, MemOperand(x2)), "ldnp w0, w1, [x2]");
1245 COMPARE(stnp(w3, w4, MemOperand(x5, 252)), "stnp w3, w4, [x5, #252]"); 1251 COMPARE(stnp(w3, w4, MemOperand(x5, 252)), "stnp w3, w4, [x5, #252]");
1246 COMPARE(ldnp(w6, w7, MemOperand(x8, -256)), "ldnp w6, w7, [x8, #-256]"); 1252 COMPARE(ldnp(w6, w7, MemOperand(x8, -256)), "ldnp w6, w7, [x8, #-256]");
1247 COMPARE(stnp(x9, x10, MemOperand(x11)), "stnp x9, x10, [x11]"); 1253 COMPARE(stnp(x9, x10, MemOperand(x11)), "stnp x9, x10, [x11]");
1248 COMPARE(ldnp(x12, x13, MemOperand(x14, 504)), "ldnp x12, x13, [x14, #504]"); 1254 COMPARE(ldnp(x12, x13, MemOperand(x14, 504)), "ldnp x12, x13, [x14, #504]");
1249 COMPARE(stnp(x15, x16, MemOperand(x17, -512)), "stnp x15, x16, [x17, #-512]"); 1255 COMPARE(stnp(x15, x16, MemOperand(x17, -512)), "stnp x15, x16, [x17, #-512]");
1250 COMPARE(ldnp(s18, s19, MemOperand(x20)), "ldnp s18, s19, [x20]"); 1256 COMPARE(ldnp(s18, s19, MemOperand(x20)), "ldnp s18, s19, [x20]");
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
1297 COMPARE(csinc(x2, x3, x4, al), "csinc x2, x3, x4, al"); 1303 COMPARE(csinc(x2, x3, x4, al), "csinc x2, x3, x4, al");
1298 COMPARE(csinc(x3, x4, x5, nv), "csinc x3, x4, x5, nv"); 1304 COMPARE(csinc(x3, x4, x5, nv), "csinc x3, x4, x5, nv");
1299 COMPARE(csinv(x4, x5, x6, al), "csinv x4, x5, x6, al"); 1305 COMPARE(csinv(x4, x5, x6, al), "csinv x4, x5, x6, al");
1300 COMPARE(csinv(x5, x6, x7, nv), "csinv x5, x6, x7, nv"); 1306 COMPARE(csinv(x5, x6, x7, nv), "csinv x5, x6, x7, nv");
1301 COMPARE(csneg(x6, x7, x8, al), "csneg x6, x7, x8, al"); 1307 COMPARE(csneg(x6, x7, x8, al), "csneg x6, x7, x8, al");
1302 COMPARE(csneg(x7, x8, x9, nv), "csneg x7, x8, x9, nv"); 1308 COMPARE(csneg(x7, x8, x9, nv), "csneg x7, x8, x9, nv");
1303 1309
1304 CLEANUP(); 1310 CLEANUP();
1305 } 1311 }
1306 1312
1313
1307 TEST(cond_select_macro) { 1314 TEST(cond_select_macro) {
1308 SET_UP_CLASS(MacroAssembler); 1315 SET_UP_CLASS(MacroAssembler);
1309 1316
1310 COMPARE(Csel(w0, w1, -1, eq), "csinv w0, w1, wzr, eq"); 1317 COMPARE(Csel(w0, w1, -1, eq), "csinv w0, w1, wzr, eq");
1311 COMPARE(Csel(w2, w3, 0, ne), "csel w2, w3, wzr, ne"); 1318 COMPARE(Csel(w2, w3, 0, ne), "csel w2, w3, wzr, ne");
1312 COMPARE(Csel(w4, w5, 1, hs), "csinc w4, w5, wzr, hs"); 1319 COMPARE(Csel(w4, w5, 1, hs), "csinc w4, w5, wzr, hs");
1313 COMPARE(Csel(x6, x7, -1, lo), "csinv x6, x7, xzr, lo"); 1320 COMPARE(Csel(x6, x7, -1, lo), "csinv x6, x7, xzr, lo");
1314 COMPARE(Csel(x8, x9, 0, mi), "csel x8, x9, xzr, mi"); 1321 COMPARE(Csel(x8, x9, 0, mi), "csel x8, x9, xzr, mi");
1315 COMPARE(Csel(x10, x11, 1, pl), "csinc x10, x11, xzr, pl"); 1322 COMPARE(Csel(x10, x11, 1, pl), "csinc x10, x11, xzr, pl");
1316 1323
1317 CLEANUP(); 1324 CLEANUP();
1318 } 1325 }
1319 1326
1327
1320 TEST_(cond_cmp) { 1328 TEST_(cond_cmp) {
1321 SET_UP(); 1329 SET_UP();
1322 1330
1323 COMPARE(ccmn(w0, w1, NZCVFlag, eq), "ccmn w0, w1, #NZCV, eq"); 1331 COMPARE(ccmn(w0, w1, NZCVFlag, eq), "ccmn w0, w1, #NZCV, eq");
1324 COMPARE(ccmn(x2, x3, NZCFlag, ne), "ccmn x2, x3, #NZCv, ne"); 1332 COMPARE(ccmn(x2, x3, NZCFlag, ne), "ccmn x2, x3, #NZCv, ne");
1325 COMPARE(ccmp(w4, w5, NZVFlag, hs), "ccmp w4, w5, #NZcV, hs"); 1333 COMPARE(ccmp(w4, w5, NZVFlag, hs), "ccmp w4, w5, #NZcV, hs");
1326 COMPARE(ccmp(x6, x7, NZFlag, lo), "ccmp x6, x7, #NZcv, lo"); 1334 COMPARE(ccmp(x6, x7, NZFlag, lo), "ccmp x6, x7, #NZcv, lo");
1327 COMPARE(ccmn(w8, 31, NFlag, mi), "ccmn w8, #31, #Nzcv, mi"); 1335 COMPARE(ccmn(w8, 31, NFlag, mi), "ccmn w8, #31, #Nzcv, mi");
1328 COMPARE(ccmn(x9, 30, NCFlag, pl), "ccmn x9, #30, #NzCv, pl"); 1336 COMPARE(ccmn(x9, 30, NCFlag, pl), "ccmn x9, #30, #NzCv, pl");
1329 COMPARE(ccmp(w10, 29, NVFlag, vs), "ccmp w10, #29, #NzcV, vs"); 1337 COMPARE(ccmp(w10, 29, NVFlag, vs), "ccmp w10, #29, #NzcV, vs");
1330 COMPARE(ccmp(x11, 28, NFlag, vc), "ccmp x11, #28, #Nzcv, vc"); 1338 COMPARE(ccmp(x11, 28, NFlag, vc), "ccmp x11, #28, #Nzcv, vc");
1331 COMPARE(ccmn(w12, w13, NoFlag, al), "ccmn w12, w13, #nzcv, al"); 1339 COMPARE(ccmn(w12, w13, NoFlag, al), "ccmn w12, w13, #nzcv, al");
1332 COMPARE(ccmp(x14, 27, ZVFlag, nv), "ccmp x14, #27, #nZcV, nv"); 1340 COMPARE(ccmp(x14, 27, ZVFlag, nv), "ccmp x14, #27, #nZcV, nv");
1333 1341
1334 CLEANUP(); 1342 CLEANUP();
1335 } 1343 }
1336 1344
1345
1337 TEST_(cond_cmp_macro) { 1346 TEST_(cond_cmp_macro) {
1338 SET_UP_CLASS(MacroAssembler); 1347 SET_UP_CLASS(MacroAssembler);
1339 1348
1340 COMPARE(Ccmp(w0, -1, VFlag, hi), "ccmn w0, #1, #nzcV, hi"); 1349 COMPARE(Ccmp(w0, -1, VFlag, hi), "ccmn w0, #1, #nzcV, hi");
1341 COMPARE(Ccmp(x1, -31, CFlag, ge), "ccmn x1, #31, #nzCv, ge"); 1350 COMPARE(Ccmp(x1, -31, CFlag, ge), "ccmn x1, #31, #nzCv, ge");
1342 COMPARE(Ccmn(w2, -1, CVFlag, gt), "ccmp w2, #1, #nzCV, gt"); 1351 COMPARE(Ccmn(w2, -1, CVFlag, gt), "ccmp w2, #1, #nzCV, gt");
1343 COMPARE(Ccmn(x3, -31, ZCVFlag, ls), "ccmp x3, #31, #nZCV, ls"); 1352 COMPARE(Ccmn(x3, -31, ZCVFlag, ls), "ccmp x3, #31, #nZCV, ls");
1344 1353
1345 CLEANUP(); 1354 CLEANUP();
1346 } 1355 }
1347 1356
1357
1348 TEST_(fmov_imm) { 1358 TEST_(fmov_imm) {
1349 SET_UP(); 1359 SET_UP();
1350 1360
1351 COMPARE(fmov(s0, 1.0), "fmov s0, #0x70 (1.0000)"); 1361 COMPARE(fmov(s0, 1.0), "fmov s0, #0x70 (1.0000)");
1352 COMPARE(fmov(s31, -13.0), "fmov s31, #0xaa (-13.0000)"); 1362 COMPARE(fmov(s31, -13.0), "fmov s31, #0xaa (-13.0000)");
1353 COMPARE(fmov(d1, 1.0), "fmov d1, #0x70 (1.0000)"); 1363 COMPARE(fmov(d1, 1.0), "fmov d1, #0x70 (1.0000)");
1354 COMPARE(fmov(d29, -13.0), "fmov d29, #0xaa (-13.0000)"); 1364 COMPARE(fmov(d29, -13.0), "fmov d29, #0xaa (-13.0000)");
1355 1365
1356 CLEANUP(); 1366 CLEANUP();
1357 } 1367 }
1358 1368
1369
1359 TEST_(fmov_reg) { 1370 TEST_(fmov_reg) {
1360 SET_UP(); 1371 SET_UP();
1361 1372
1362 COMPARE(fmov(w3, s13), "fmov w3, s13"); 1373 COMPARE(fmov(w3, s13), "fmov w3, s13");
1363 COMPARE(fmov(x6, d26), "fmov x6, d26"); 1374 COMPARE(fmov(x6, d26), "fmov x6, d26");
1364 COMPARE(fmov(s11, w30), "fmov s11, w30"); 1375 COMPARE(fmov(s11, w30), "fmov s11, w30");
1365 COMPARE(fmov(d31, x2), "fmov d31, x2"); 1376 COMPARE(fmov(d31, x2), "fmov d31, x2");
1366 COMPARE(fmov(s12, s13), "fmov s12, s13"); 1377 COMPARE(fmov(s12, s13), "fmov s12, s13");
1367 COMPARE(fmov(d22, d23), "fmov d22, d23"); 1378 COMPARE(fmov(d22, d23), "fmov d22, d23");
1368 1379
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after
1617 TEST_(brk) { 1628 TEST_(brk) {
1618 SET_UP(); 1629 SET_UP();
1619 1630
1620 COMPARE(brk(0), "brk #0x0"); 1631 COMPARE(brk(0), "brk #0x0");
1621 COMPARE(brk(1), "brk #0x1"); 1632 COMPARE(brk(1), "brk #0x1");
1622 COMPARE(brk(65535), "brk #0xffff"); 1633 COMPARE(brk(65535), "brk #0xffff");
1623 1634
1624 CLEANUP(); 1635 CLEANUP();
1625 } 1636 }
1626 1637
1638
1627 TEST_(add_sub_negative) { 1639 TEST_(add_sub_negative) {
1628 SET_UP_CLASS(MacroAssembler); 1640 SET_UP_CLASS(MacroAssembler);
1629 1641
1630 COMPARE(Add(x10, x0, -42), "sub x10, x0, #0x2a (42)"); 1642 COMPARE(Add(x10, x0, -42), "sub x10, x0, #0x2a (42)");
1631 COMPARE(Add(x11, x1, -687), "sub x11, x1, #0x2af (687)"); 1643 COMPARE(Add(x11, x1, -687), "sub x11, x1, #0x2af (687)");
1632 COMPARE(Add(x12, x2, -0x88), "sub x12, x2, #0x88 (136)"); 1644 COMPARE(Add(x12, x2, -0x88), "sub x12, x2, #0x88 (136)");
1633 1645
1634 COMPARE(Sub(x13, x0, -600), "add x13, x0, #0x258 (600)"); 1646 COMPARE(Sub(x13, x0, -600), "add x13, x0, #0x258 (600)");
1635 COMPARE(Sub(x14, x1, -313), "add x14, x1, #0x139 (313)"); 1647 COMPARE(Sub(x14, x1, -313), "add x14, x1, #0x139 (313)");
1636 COMPARE(Sub(x15, x2, -0x555), "add x15, x2, #0x555 (1365)"); 1648 COMPARE(Sub(x15, x2, -0x555), "add x15, x2, #0x555 (1365)");
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
1740 COMPARE(Dsb(InnerShareable, BarrierOther), "dsb sy (0b1000)"); 1752 COMPARE(Dsb(InnerShareable, BarrierOther), "dsb sy (0b1000)");
1741 COMPARE(Dsb(NonShareable, BarrierOther), "dsb sy (0b0100)"); 1753 COMPARE(Dsb(NonShareable, BarrierOther), "dsb sy (0b0100)");
1742 COMPARE(Dsb(OuterShareable, BarrierOther), "dsb sy (0b0000)"); 1754 COMPARE(Dsb(OuterShareable, BarrierOther), "dsb sy (0b0000)");
1743 1755
1744 // ISB 1756 // ISB
1745 COMPARE(Isb(), "isb"); 1757 COMPARE(Isb(), "isb");
1746 1758
1747 CLEANUP(); 1759 CLEANUP();
1748 } 1760 }
1749 1761
OLDNEW
« no previous file with comments | « test/cctest/test-debug.cc ('k') | test/cctest/test-double.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698