Lines Matching refs:FPURegister
71 // Implementation of Register and FPURegister.
208 struct FPURegister {
225 inline static int ToAllocationIndex(FPURegister reg);
228 static FPURegister FromAllocationIndex(int index) {
233 static FPURegister from_code(int code) {
234 FPURegister r = { code };
239 bool is(FPURegister creg) const { return code_ == creg.code_; }
240 FPURegister low() const {
243 FPURegister reg;
248 FPURegister high() const {
251 FPURegister reg;
282 typedef FPURegister DoubleRegister;
283 typedef FPURegister FloatRegister;
285 const FPURegister no_freg = { -1 };
287 const FPURegister f0 = { 0 }; // Return value in hard float mode.
288 const FPURegister f1 = { 1 };
289 const FPURegister f2 = { 2 };
290 const FPURegister f3 = { 3 };
291 const FPURegister f4 = { 4 };
292 const FPURegister f5 = { 5 };
293 const FPURegister f6 = { 6 };
294 const FPURegister f7 = { 7 };
295 const FPURegister f8 = { 8 };
296 const FPURegister f9 = { 9 };
297 const FPURegister f10 = { 10 };
298 const FPURegister f11 = { 11 };
299 const FPURegister f12 = { 12 }; // Arg 0 in hard float mode.
300 const FPURegister f13 = { 13 };
301 const FPURegister f14 = { 14 }; // Arg 1 in hard float mode.
302 const FPURegister f15 = { 15 };
303 const FPURegister f16 = { 16 };
304 const FPURegister f17 = { 17 };
305 const FPURegister f18 = { 18 };
306 const FPURegister f19 = { 19 };
307 const FPURegister f20 = { 20 };
308 const FPURegister f21 = { 21 };
309 const FPURegister f22 = { 22 };
310 const FPURegister f23 = { 23 };
311 const FPURegister f24 = { 24 };
312 const FPURegister f25 = { 25 };
313 const FPURegister f26 = { 26 };
314 const FPURegister f27 = { 27 };
315 const FPURegister f28 = { 28 };
316 const FPURegister f29 = { 29 };
317 const FPURegister f30 = { 30 };
318 const FPURegister f31 = { 31 };
842 void sel(SecondaryField fmt, FPURegister fd, FPURegister ft,
843 FPURegister fs, uint8_t sel);
845 void seleqz(SecondaryField fmt, FPURegister fd, FPURegister ft,
846 FPURegister fs);
848 void selnez(SecondaryField fmt, FPURegister fd, FPURegister ft,
849 FPURegister fs);
859 void lwc1(FPURegister fd, const MemOperand& src);
860 void ldc1(FPURegister fd, const MemOperand& src);
862 void swc1(FPURegister fs, const MemOperand& dst);
863 void sdc1(FPURegister fs, const MemOperand& dst);
865 void mtc1(Register rt, FPURegister fs);
866 void mthc1(Register rt, FPURegister fs);
868 void mfc1(Register rt, FPURegister fs);
869 void mfhc1(Register rt, FPURegister fs);
875 void add_d(FPURegister fd, FPURegister fs, FPURegister ft);
876 void sub_d(FPURegister fd, FPURegister fs, FPURegister ft);
877 void mul_d(FPURegister fd, FPURegister fs, FPURegister ft);
878 void madd_d(FPURegister fd, FPURegister fr, FPURegister fs, FPURegister ft);
879 void div_d(FPURegister fd, FPURegister fs, FPURegister ft);
880 void abs_d(FPURegister fd, FPURegister fs);
881 void mov_d(FPURegister fd, FPURegister fs);
882 void neg_d(FPURegister fd, FPURegister fs);
883 void sqrt_d(FPURegister fd, FPURegister fs);
886 void cvt_w_s(FPURegister fd, FPURegister fs);
887 void cvt_w_d(FPURegister fd, FPURegister fs);
888 void trunc_w_s(FPURegister fd, FPURegister fs);
889 void trunc_w_d(FPURegister fd, FPURegister fs);
890 void round_w_s(FPURegister fd, FPURegister fs);
891 void round_w_d(FPURegister fd, FPURegister fs);
892 void floor_w_s(FPURegister fd, FPURegister fs);
893 void floor_w_d(FPURegister fd, FPURegister fs);
894 void ceil_w_s(FPURegister fd, FPURegister fs);
895 void ceil_w_d(FPURegister fd, FPURegister fs);
897 void cvt_l_s(FPURegister fd, FPURegister fs);
898 FPURegister fd, FPURegister fs);
899 void trunc_l_s(FPURegister fd, FPURegister fs);
900 void trunc_l_d(FPURegister fd, FPURegister fs);
901 void round_l_s(FPURegister fd, FPURegister fs);
902 void round_l_d(FPURegister fd, FPURegister fs);
903 void floor_l_s(FPURegister fd, FPURegister fs);
904 void floor_l_d(FPURegister fd, FPURegister fs);
905 void ceil_l_s(FPURegister fd, FPURegister fs);
906 void ceil_l_d(FPURegister fd, FPURegister fs);
908 void min(SecondaryField fmt, FPURegister fd, FPURegister ft, FPURegister fs);
909 void mina(SecondaryField fmt, FPURegister fd, FPURegister ft, FPURegister fs);
910 void max(SecondaryField fmt, FPURegister fd, FPURegister ft, FPURegister fs);
911 void maxa(SecondaryField fmt, FPURegister fd, FPURegister ft, FPURegister fs);
913 void cvt_s_w(FPURegister fd, FPURegister fs);
914 void cvt_s_l(FPURegister fd, FPURegister fs);
915 void cvt_s_d(FPURegister fd, FPURegister fs);
917 void cvt_d_w(FPURegister fd, FPURegister fs);
918 void cvt_d_l(FPURegister fd, FPURegister fs);
919 void cvt_d_s(FPURegister fd, FPURegister fs);
923 FPURegister fd, FPURegister ft, FPURegister fs);
925 void bc1eqz(int16_t offset, FPURegister ft);
926 void bc1eqz(Label* L, FPURegister ft) {
929 void bc1nez(int16_t offset, FPURegister ft);
930 void bc1nez(Label* L, FPURegister ft) {
936 FPURegister ft, FPURegister fs, uint16_t cc = 0);
942 void fcmp(FPURegister src1, const double src2, FPUCondition cond);
1222 // Using the same structure to refer to Register and FPURegister would spare a
1242 FPURegister ft,
1243 FPURegister fs,
1244 FPURegister fd,
1248 FPURegister fr,
1249 FPURegister ft,
1250 FPURegister fs,
1251 FPURegister fd,
1257 FPURegister fs,
1258 FPURegister fd,
1278 FPURegister r2,