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 842 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
853 COMPARE(vrintm(d2, d3), "febb2b43 vrintm.f64.f64 d2, d3"); | 853 COMPARE(vrintm(d2, d3), "febb2b43 vrintm.f64.f64 d2, d3"); |
854 | 854 |
855 COMPARE(vrintz(d0, d0), "eeb60bc0 vrintz.f64.f64 d0, d0"); | 855 COMPARE(vrintz(d0, d0), "eeb60bc0 vrintz.f64.f64 d0, d0"); |
856 COMPARE(vrintz(d2, d3, ne), "1eb62bc3 vrintzne.f64.f64 d2, d3"); | 856 COMPARE(vrintz(d2, d3, ne), "1eb62bc3 vrintzne.f64.f64 d2, d3"); |
857 } | 857 } |
858 | 858 |
859 VERIFY_RUN(); | 859 VERIFY_RUN(); |
860 } | 860 } |
861 | 861 |
862 | 862 |
| 863 TEST(ARMv8_vminmax_disasm) { |
| 864 SET_UP(); |
| 865 |
| 866 if (CpuFeatures::IsSupported(ARMv8)) { |
| 867 COMPARE(vmaxnm(d0, d1, d2), "fe810b02 vmaxnm.f64 d0, d1, d2"); |
| 868 COMPARE(vminnm(d3, d4, d5), "fe843b45 vminnm.f64 d3, d4, d5"); |
| 869 COMPARE(vmaxnm(s6, s7, s8), "fe833a84 vmaxnm.f32 s6, s7, s8"); |
| 870 COMPARE(vminnm(s9, s10, s11), "fec54a65 vminnm.f32 s9, s10, s11"); |
| 871 } |
| 872 |
| 873 VERIFY_RUN(); |
| 874 } |
| 875 |
| 876 |
863 TEST(ARMv8_vselX_disasm) { | 877 TEST(ARMv8_vselX_disasm) { |
864 SET_UP(); | 878 SET_UP(); |
865 | 879 |
866 if (CpuFeatures::IsSupported(ARMv8)) { | 880 if (CpuFeatures::IsSupported(ARMv8)) { |
867 // Native instructions. | 881 // Native instructions. |
868 COMPARE(vsel(eq, d0, d1, d2), | 882 COMPARE(vsel(eq, d0, d1, d2), |
869 "fe010b02 vseleq.f64 d0, d1, d2"); | 883 "fe010b02 vseleq.f64 d0, d1, d2"); |
870 COMPARE(vsel(eq, s0, s1, s2), | 884 COMPARE(vsel(eq, s0, s1, s2), |
871 "fe000a81 vseleq.f32 s0, s1, s2"); | 885 "fe000a81 vseleq.f32 s0, s1, s2"); |
872 COMPARE(vsel(ge, d0, d1, d2), | 886 COMPARE(vsel(ge, d0, d1, d2), |
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1178 | 1192 |
1179 COMPARE(ldrexb(r0, r1), "e1d10f9f ldrexb r0, [r1]"); | 1193 COMPARE(ldrexb(r0, r1), "e1d10f9f ldrexb r0, [r1]"); |
1180 COMPARE(strexb(r0, r1, r2), "e1c20f91 strexb r0, r1, [r2]"); | 1194 COMPARE(strexb(r0, r1, r2), "e1c20f91 strexb r0, r1, [r2]"); |
1181 COMPARE(ldrexh(r0, r1), "e1f10f9f ldrexh r0, [r1]"); | 1195 COMPARE(ldrexh(r0, r1), "e1f10f9f ldrexh r0, [r1]"); |
1182 COMPARE(strexh(r0, r1, r2), "e1e20f91 strexh r0, r1, [r2]"); | 1196 COMPARE(strexh(r0, r1, r2), "e1e20f91 strexh r0, r1, [r2]"); |
1183 COMPARE(ldrex(r0, r1), "e1910f9f ldrex r0, [r1]"); | 1197 COMPARE(ldrex(r0, r1), "e1910f9f ldrex r0, [r1]"); |
1184 COMPARE(strex(r0, r1, r2), "e1820f91 strex r0, r1, [r2]"); | 1198 COMPARE(strex(r0, r1, r2), "e1820f91 strex r0, r1, [r2]"); |
1185 | 1199 |
1186 VERIFY_RUN(); | 1200 VERIFY_RUN(); |
1187 } | 1201 } |
OLD | NEW |