Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 922 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 933 COMPARE(vst1(Neon16, NeonListOperand(d17, 4), NeonMemOperand(r9)), | 933 COMPARE(vst1(Neon16, NeonListOperand(d17, 4), NeonMemOperand(r9)), |
| 934 "f449124f vst1.16 {d17, d18, d19, d20}, [r9]"); | 934 "f449124f vst1.16 {d17, d18, d19, d20}, [r9]"); |
| 935 COMPARE(vmovl(NeonU8, q3, d1), | 935 COMPARE(vmovl(NeonU8, q3, d1), |
| 936 "f3886a11 vmovl.u8 q3, d1"); | 936 "f3886a11 vmovl.u8 q3, d1"); |
| 937 COMPARE(vmovl(NeonU8, q4, d2), | 937 COMPARE(vmovl(NeonU8, q4, d2), |
| 938 "f3888a12 vmovl.u8 q4, d2"); | 938 "f3888a12 vmovl.u8 q4, d2"); |
| 939 COMPARE(vmov(q0, q15), | 939 COMPARE(vmov(q0, q15), |
| 940 "f22e01fe vmov q0, q15"); | 940 "f22e01fe vmov q0, q15"); |
| 941 COMPARE(vmov(q8, q9), | 941 COMPARE(vmov(q8, q9), |
| 942 "f26201f2 vmov q8, q9"); | 942 "f26201f2 vmov q8, q9"); |
| 943 COMPARE(vmvn(q0, q15), | |
| 944 "f3b005ee vmvn q0, q15"); | |
| 945 COMPARE(vmvn(q8, q9), | |
| 946 "f3f005e2 vmvn q8, q9"); | |
| 943 COMPARE(vswp(d0, d31), | 947 COMPARE(vswp(d0, d31), |
| 944 "f3b2002f vswp d0, d31"); | 948 "f3b2002f vswp d0, d31"); |
| 945 COMPARE(vswp(d16, d14), | 949 COMPARE(vswp(d16, d14), |
| 946 "f3f2000e vswp d16, d14"); | 950 "f3f2000e vswp d16, d14"); |
| 947 COMPARE(vswp(q0, q15), | 951 COMPARE(vswp(q0, q15), |
| 948 "f3b2006e vswp q0, q15"); | 952 "f3b2006e vswp q0, q15"); |
| 949 COMPARE(vswp(q8, q9), | 953 COMPARE(vswp(q8, q9), |
| 950 "f3f20062 vswp q8, q9"); | 954 "f3f20062 vswp q8, q9"); |
| 955 COMPARE(vdup(q0, r0, Neon8), | |
| 956 "eee00b10 vdup.8 q0, r0"); | |
| 957 COMPARE(vdup(q1, r4, Neon16), | |
| 958 "eea24b30 vdup.16 q1, r4"); | |
| 959 COMPARE(vdup(q15, r1, Neon32), | |
| 960 "eeae1b90 vdup.32 q15, r1"); | |
| 961 COMPARE(vdup(q0, s3), | |
| 962 "f3bc0c41 vdup q0, d1[1]"); | |
| 963 COMPARE(vdup(q15, s2), | |
| 964 "f3f4ec41 vdup q15, d1[0]"); | |
| 965 COMPARE(vcvt_f32_s32(q15, q1), | |
| 966 "f3fbe642 vcvt.f32.s32 q15, q1"); | |
| 967 COMPARE(vcvt_f32_u32(q8, q9), | |
| 968 "f3fb06e2 vcvt.f32.u32 q8, q9"); | |
| 969 COMPARE(vcvt_s32_f32(q15, q1), | |
| 970 "f3fbe742 vcvt.s32.f32 q15, q1"); | |
| 971 COMPARE(vcvt_u32_f32(q8, q9), | |
| 972 "f3fb07e2 vcvt.u32.f32 q8, q9"); | |
| 951 COMPARE(veor(d0, d1, d2), | 973 COMPARE(veor(d0, d1, d2), |
| 952 "f3010112 veor d0, d1, d2"); | 974 "f3010112 veor d0, d1, d2"); |
| 953 COMPARE(veor(d0, d30, d31), | 975 COMPARE(veor(d0, d30, d31), |
| 954 "f30e01bf veor d0, d30, d31"); | 976 "f30e01bf veor d0, d30, d31"); |
| 955 COMPARE(veor(q0, q1, q2), | 977 COMPARE(veor(q0, q1, q2), |
| 956 "f3020154 veor q0, q1, q2"); | 978 "f3020154 veor q0, q1, q2"); |
| 957 COMPARE(veor(q15, q0, q8), | 979 COMPARE(veor(q15, q0, q8), |
| 958 "f340e170 veor q15, q0, q8"); | 980 "f340e170 veor q15, q0, q8"); |
| 981 COMPARE(vadd(q15, q0, q8), | |
| 982 "f240ed60 vadd.f32 q15, q0, q8"); | |
| 983 COMPARE(vadd(q0, q1, q2, Neon8), | |
| 984 "f2020844 vadd.i8 q0, q1, q2"); | |
| 985 COMPARE(vadd(q1, q2, q8, Neon16), | |
| 986 "f2142860 vadd.i16 q1, q2, q8"); | |
| 987 COMPARE(vadd(q15, q0, q8, Neon32), | |
| 988 "f260e860 vadd.i32 q15, q0, q8"); | |
| 989 COMPARE(vsub(q15, q0, q8), | |
| 990 "f260ed60 vsub.f32 q15, q0, q8"); | |
| 991 COMPARE(vsub(q0, q1, q2, Neon8), | |
| 992 "f3020844 vsub.i8 q0, q1, q2"); | |
| 993 COMPARE(vsub(q1, q2, q8, Neon16), | |
| 994 "f3142860 vsub.i16 q1, q2, q8"); | |
| 995 COMPARE(vsub(q15, q0, q8, Neon32), | |
| 996 "f360e860 vsub.i32 q15, q0, q8"); | |
| 997 COMPARE(vtst(q0, q1, q2, Neon8), | |
| 998 "f2020854 vtst.i8 q0, q1, q2"); | |
| 999 COMPARE(vtst(q1, q2, q8, Neon16), | |
| 1000 "f2142870 vtst.i16 q1, q2, q8"); | |
| 1001 COMPARE(vtst(q15, q0, q8, Neon32), | |
| 1002 "f260e870 vtst.i32 q15, q0, q8"); | |
| 1003 COMPARE(vceq(q0, q1, q2, Neon8), | |
| 1004 "f3020854 vceq.i8 q0, q1, q2"); | |
| 1005 COMPARE(vceq(q1, q2, q8, Neon16), | |
| 1006 "f3142870 vceq.i16 q1, q2, q8"); | |
| 1007 COMPARE(vceq(q15, q0, q8, Neon32), | |
| 1008 "f360e870 vceq.i32 q15, q0, q8"); | |
| 1009 COMPARE(vbsl(q0, q1, q2), | |
| 1010 "f3120154 vbsl q0, q1, q2"); | |
| 1011 COMPARE(vbsl(q15, q0, q8), | |
| 1012 "f350e170 vbsl q15, q0, q8"); | |
| 1013 COMPARE(vtbl(d0, NeonListOperand(d1, 1), d2), | |
| 1014 "f3b10802 vtbl d0, {d1}, d2"); | |
|
Rodolph Perfetta (ARM)
2016/12/08 18:08:28
vtbl.8/vtbx.8
bbudge
2016/12/10 21:33:04
Done.
| |
| 1015 COMPARE(vtbl(d31, NeonListOperand(d0, 2), d4), | |
| 1016 "f3f0f904 vtbl d31, {d0, d1}, d4"); | |
| 1017 COMPARE(vtbl(d15, NeonListOperand(d1, 3), d5), | |
| 1018 "f3b1fa05 vtbl d15, {d1, d2, d3}, d5"); | |
| 1019 COMPARE(vtbx(d0, NeonListOperand(d1, 1), d2), | |
| 1020 "f3b10842 vtbx d0, {d1}, d2"); | |
| 1021 COMPARE(vtbx(d31, NeonListOperand(d0, 2), d4), | |
| 1022 "f3f0f944 vtbx d31, {d0, d1}, d4"); | |
| 1023 COMPARE(vtbx(d15, NeonListOperand(d1, 3), d5), | |
| 1024 "f3b1fa45 vtbx d15, {d1, d2, d3}, d5"); | |
|
Rodolph Perfetta (ARM)
2016/12/08 18:08:28
it woudl be nice to have a test with a list of 4 r
bbudge
2016/12/10 21:33:04
Done.
| |
| 959 } | 1025 } |
| 960 | 1026 |
| 961 VERIFY_RUN(); | 1027 VERIFY_RUN(); |
| 962 } | 1028 } |
| 963 | 1029 |
| 964 | 1030 |
| 965 TEST(LoadStore) { | 1031 TEST(LoadStore) { |
| 966 SET_UP(); | 1032 SET_UP(); |
| 967 | 1033 |
| 968 COMPARE(ldrb(r0, MemOperand(r1)), | 1034 COMPARE(ldrb(r0, MemOperand(r1)), |
| (...skipping 270 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1239 | 1305 |
| 1240 COMPARE(ldrexb(r0, r1), "e1d10f9f ldrexb r0, [r1]"); | 1306 COMPARE(ldrexb(r0, r1), "e1d10f9f ldrexb r0, [r1]"); |
| 1241 COMPARE(strexb(r0, r1, r2), "e1c20f91 strexb r0, r1, [r2]"); | 1307 COMPARE(strexb(r0, r1, r2), "e1c20f91 strexb r0, r1, [r2]"); |
| 1242 COMPARE(ldrexh(r0, r1), "e1f10f9f ldrexh r0, [r1]"); | 1308 COMPARE(ldrexh(r0, r1), "e1f10f9f ldrexh r0, [r1]"); |
| 1243 COMPARE(strexh(r0, r1, r2), "e1e20f91 strexh r0, r1, [r2]"); | 1309 COMPARE(strexh(r0, r1, r2), "e1e20f91 strexh r0, r1, [r2]"); |
| 1244 COMPARE(ldrex(r0, r1), "e1910f9f ldrex r0, [r1]"); | 1310 COMPARE(ldrex(r0, r1), "e1910f9f ldrex r0, [r1]"); |
| 1245 COMPARE(strex(r0, r1, r2), "e1820f91 strex r0, r1, [r2]"); | 1311 COMPARE(strex(r0, r1, r2), "e1820f91 strex r0, r1, [r2]"); |
| 1246 | 1312 |
| 1247 VERIFY_RUN(); | 1313 VERIFY_RUN(); |
| 1248 } | 1314 } |
| OLD | NEW |