OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/assembler.h" | 5 #include "src/assembler.h" |
6 #include "src/codegen.h" | 6 #include "src/codegen.h" |
7 #include "src/compiler/linkage.h" | 7 #include "src/compiler/linkage.h" |
8 #include "src/compiler/machine-type.h" | 8 #include "src/compiler/machine-type.h" |
9 #include "src/compiler/raw-machine-assembler.h" | 9 #include "src/compiler/raw-machine-assembler.h" |
10 | 10 |
(...skipping 829 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
840 RegisterConfig config(params, rets); | 840 RegisterConfig config(params, rets); |
841 | 841 |
842 CallDescriptor* desc = config.Create(&zone, &sig); | 842 CallDescriptor* desc = config.Create(&zone, &sig); |
843 RunSelect<int64_t, 0>(desc); | 843 RunSelect<int64_t, 0>(desc); |
844 RunSelect<int64_t, 1>(desc); | 844 RunSelect<int64_t, 1>(desc); |
845 } | 845 } |
846 } | 846 } |
847 | 847 |
848 | 848 |
849 TEST(Float32Select_registers) { | 849 TEST(Float32Select_registers) { |
850 if (DoubleRegister::kMaxNumAllocatableRegisters < 2) return; | 850 if (RegisterConfiguration::ArchDefault()->num_double_registers() < 2) return; |
851 | 851 |
852 int rarray[] = {0}; | 852 int rarray[] = {0}; |
853 ArgsBuffer<float32>::Sig sig(2); | 853 ArgsBuffer<float32>::Sig sig(2); |
854 | 854 |
855 Float32RegisterPairs pairs; | 855 Float32RegisterPairs pairs; |
856 Zone zone; | 856 Zone zone; |
857 while (pairs.More()) { | 857 while (pairs.More()) { |
858 int parray[2]; | 858 int parray[2]; |
859 pairs.Next(&parray[0], &parray[1], false); | 859 pairs.Next(&parray[0], &parray[1], false); |
860 Allocator params(nullptr, 0, parray, 2); | 860 Allocator params(nullptr, 0, parray, 2); |
861 Allocator rets(nullptr, 0, rarray, 1); | 861 Allocator rets(nullptr, 0, rarray, 1); |
862 RegisterConfig config(params, rets); | 862 RegisterConfig config(params, rets); |
863 | 863 |
864 CallDescriptor* desc = config.Create(&zone, &sig); | 864 CallDescriptor* desc = config.Create(&zone, &sig); |
865 RunSelect<float32, 0>(desc); | 865 RunSelect<float32, 0>(desc); |
866 RunSelect<float32, 1>(desc); | 866 RunSelect<float32, 1>(desc); |
867 } | 867 } |
868 } | 868 } |
869 | 869 |
870 | 870 |
871 TEST(Float64Select_registers) { | 871 TEST(Float64Select_registers) { |
872 if (DoubleRegister::kMaxNumAllocatableRegisters < 2) return; | 872 if (RegisterConfiguration::ArchDefault()->num_double_registers() < 2) return; |
873 | 873 |
874 int rarray[] = {0}; | 874 int rarray[] = {0}; |
875 ArgsBuffer<float64>::Sig sig(2); | 875 ArgsBuffer<float64>::Sig sig(2); |
876 | 876 |
877 Float64RegisterPairs pairs; | 877 Float64RegisterPairs pairs; |
878 Zone zone; | 878 Zone zone; |
879 while (pairs.More()) { | 879 while (pairs.More()) { |
880 int parray[2]; | 880 int parray[2]; |
881 pairs.Next(&parray[0], &parray[1], false); | 881 pairs.Next(&parray[0], &parray[1], false); |
882 Allocator params(nullptr, 0, parray, 2); | 882 Allocator params(nullptr, 0, parray, 2); |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
976 ArgsBuffer<float64>::Sig sig(2); | 976 ArgsBuffer<float64>::Sig sig(2); |
977 RegisterConfig config(params, rets); | 977 RegisterConfig config(params, rets); |
978 CallDescriptor* desc = config.Create(&zone, &sig); | 978 CallDescriptor* desc = config.Create(&zone, &sig); |
979 | 979 |
980 Run_Computation<float64>(desc, Build_Select_With_Call<float64, 0>, | 980 Run_Computation<float64>(desc, Build_Select_With_Call<float64, 0>, |
981 Compute_Select<float64, 0>, 1098); | 981 Compute_Select<float64, 0>, 1098); |
982 | 982 |
983 Run_Computation<float64>(desc, Build_Select_With_Call<float64, 1>, | 983 Run_Computation<float64>(desc, Build_Select_With_Call<float64, 1>, |
984 Compute_Select<float64, 1>, 1099); | 984 Compute_Select<float64, 1>, 1099); |
985 } | 985 } |
OLD | NEW |