Lines Matching refs:wt

4887 T Simulator::Msa3RInstrHelper(uint32_t opcode, T wd, T ws, T wt) {  in Msa3RInstrHelper()  argument
4890 T wt_modulo = wt % (sizeof(T) * 8); in Msa3RInstrHelper()
4933 res = ws + wt; in Msa3RInstrHelper()
4936 res = ws - wt; in Msa3RInstrHelper()
4939 res = Max(ws, wt); in Msa3RInstrHelper()
4942 res = static_cast<T>(Max(static_cast<uT>(ws), static_cast<uT>(wt))); in Msa3RInstrHelper()
4945 res = Min(ws, wt); in Msa3RInstrHelper()
4948 res = static_cast<T>(Min(static_cast<uT>(ws), static_cast<uT>(wt))); in Msa3RInstrHelper()
4953 res = Nabs(ws) < Nabs(wt) ? ws : wt; in Msa3RInstrHelper()
4958 res = Nabs(ws) > Nabs(wt) ? ws : wt; in Msa3RInstrHelper()
4961 res = static_cast<T>(!Compare(ws, wt) ? -1ull : 0ull); in Msa3RInstrHelper()
4964 res = static_cast<T>((Compare(ws, wt) == -1) ? -1ull : 0ull); in Msa3RInstrHelper()
4968 (Compare(static_cast<uT>(ws), static_cast<uT>(wt)) == -1) ? -1ull in Msa3RInstrHelper()
4972 res = static_cast<T>((Compare(ws, wt) != 1) ? -1ull : 0ull); in Msa3RInstrHelper()
4976 (Compare(static_cast<uT>(ws), static_cast<uT>(wt)) != 1) ? -1ull in Msa3RInstrHelper()
4980 res = static_cast<T>(Abs(ws) + Abs(wt)); in Msa3RInstrHelper()
4984 T wt_nabs = Nabs(wt); in Msa3RInstrHelper()
4992 res = SaturateAdd(ws, wt); in Msa3RInstrHelper()
4996 uT wt_u = static_cast<uT>(wt); in Msa3RInstrHelper()
5000 res = static_cast<T>((wt & ws) + ((wt ^ ws) >> 1)); in Msa3RInstrHelper()
5004 uT wt_u = static_cast<uT>(wt); in Msa3RInstrHelper()
5008 res = static_cast<T>((wt | ws) - ((wt ^ ws) >> 1)); in Msa3RInstrHelper()
5012 uT wt_u = static_cast<uT>(wt); in Msa3RInstrHelper()
5016 res = SaturateSub(ws, wt); in Msa3RInstrHelper()
5020 uT wt_u = static_cast<uT>(wt); in Msa3RInstrHelper()
5025 if (wt > 0) { in Msa3RInstrHelper()
5026 uT wtu = static_cast<uT>(wt); in Msa3RInstrHelper()
5033 if (wsu > std::numeric_limits<uT>::max() + wt) { in Msa3RInstrHelper()
5036 res = static_cast<T>(wsu - wt); in Msa3RInstrHelper()
5042 uT wtu = static_cast<uT>(wt); in Msa3RInstrHelper()
5063 res = static_cast<T>(Abs(ws - wt)); in Msa3RInstrHelper()
5067 uT wtu = static_cast<uT>(wt); in Msa3RInstrHelper()
5071 res = ws * wt; in Msa3RInstrHelper()
5074 res = wd + ws * wt; in Msa3RInstrHelper()
5077 res = wd - ws * wt; in Msa3RInstrHelper()
5080 res = wt != 0 ? ws / wt : static_cast<T>(Unpredictable); in Msa3RInstrHelper()
5083 res = wt != 0 ? static_cast<T>(static_cast<uT>(ws) / static_cast<uT>(wt)) in Msa3RInstrHelper()
5087 res = wt != 0 ? ws % wt : static_cast<T>(Unpredictable); in Msa3RInstrHelper()
5090 res = wt != 0 ? static_cast<T>(static_cast<uT>(ws) % static_cast<uT>(wt)) in Msa3RInstrHelper()
5119 void Msa3RInstrHelper_shuffle(const uint32_t opcode, T_reg ws, T_reg wt, in Msa3RInstrHelper_shuffle() argument
5123 wt_p = reinterpret_cast<T_int*>(wt); in Msa3RInstrHelper_shuffle()
5166 void Msa3RInstrHelper_horizontal(const uint32_t opcode, T_reg ws, T_reg wt, in Msa3RInstrHelper_horizontal() argument
5174 wt_p = reinterpret_cast<T_smaller_int*>(wt); in Msa3RInstrHelper_horizontal()
5179 wt_pu = reinterpret_cast<T_smaller_uint*>(wt); in Msa3RInstrHelper_horizontal()
5207 msa_reg_t ws, wd, wt; in DecodeTypeMsa3R() local
5209 get_msa_register(wt_reg(), &wt); in DecodeTypeMsa3R()
5219 opcode, &ws, &wt, &wd, i, num_of_lanes); \ in DecodeTypeMsa3R()
5239 Msa3RInstrHelper_shuffle<int_type>(opcode, &ws, &wt, &wd, i, \ in DecodeTypeMsa3R()
5268 Msa3RInstrHelper_shuffle<int_type>(opcode, &ws, &wt, &wd, i, \ in DecodeTypeMsa3R()
5292 wd.elem[i] = Msa3RInstrHelper(opcode, wd.elem[i], ws.elem[i], wt.elem[i]); \ in DecodeTypeMsa3R()
5319 void Msa3RFInstrHelper(uint32_t opcode, T_reg ws, T_reg wt, T_reg& wd) { in Msa3RFInstrHelper() argument
5322 const T_fp t_element = *reinterpret_cast<T_fp*>(&wt); in Msa3RFInstrHelper()
5427 wd = bit_cast<T_int>(std::ldexp(s_element, static_cast<int>(wt))); in Msa3RFInstrHelper()
5462 void Msa3RFInstrHelper2(uint32_t opcode, T_reg ws, T_reg wt, T_reg& wd) { in Msa3RFInstrHelper2() argument
5469 const T_int_dbl reg_t = wt; in Msa3RFInstrHelper2()
5525 msa_reg_t wd, ws, wt; in DecodeTypeMsa3RF() local
5528 get_msa_register(wt_reg(), &wt); in DecodeTypeMsa3RF()
5618 FEXDO_DF(wt.uw[i], wd.uh[i]) in DecodeTypeMsa3RF()
5626 static_cast<float>(bit_cast<double>(wt.d[i]))); in DecodeTypeMsa3RF()
5656 FTQ_DF(wt.w[i], wd.h[i], float, int16_t) in DecodeTypeMsa3RF()
5663 FTQ_DF(wt.d[i], wd.w[i], double, int32_t) in DecodeTypeMsa3RF()
5671 #define MSA_3RF_DF(T1, T2, Lanes, ws, wt, wd) \ in DecodeTypeMsa3RF() argument
5673 Msa3RFInstrHelper<T1, T2>(opcode, ws, wt, wd); \ in DecodeTypeMsa3RF()
5675 #define MSA_3RF_DF2(T1, T2, Lanes, ws, wt, wd) \ in DecodeTypeMsa3RF() argument
5677 Msa3RFInstrHelper2<T1, T2>(opcode, ws, wt, wd); \ in DecodeTypeMsa3RF()
5689 MSA_3RF_DF2(int16_t, int32_t, kMSALanesHalf, ws.h[i], wt.h[i], in DecodeTypeMsa3RF()
5693 MSA_3RF_DF2(int32_t, int64_t, kMSALanesWord, ws.w[i], wt.w[i], in DecodeTypeMsa3RF()
5706 MSA_3RF_DF(int32_t, float, kMSALanesWord, ws.w[i], wt.w[i], wd.w[i]) in DecodeTypeMsa3RF()
5709 MSA_3RF_DF(int64_t, double, kMSALanesDword, ws.d[i], wt.d[i], wd.d[i]) in DecodeTypeMsa3RF()
5726 msa_reg_t wd, ws, wt; in DecodeTypeMsaVec() local
5729 get_msa_register(instr_.WtValue(), wt.w); in DecodeTypeMsaVec()
5737 wd.w[i] = ws.w[i] & wt.w[i]; in DecodeTypeMsaVec()
5740 wd.w[i] = ws.w[i] | wt.w[i]; in DecodeTypeMsaVec()
5743 wd.w[i] = ~(ws.w[i] | wt.w[i]); in DecodeTypeMsaVec()
5746 wd.w[i] = ws.w[i] ^ wt.w[i]; in DecodeTypeMsaVec()
5749 wd.w[i] = (wt.w[i] & ws.w[i]) | (~wt.w[i] & wd.w[i]); in DecodeTypeMsaVec()
5752 wd.w[i] = (~wt.w[i] & ws.w[i]) | (wt.w[i] & wd.w[i]); in DecodeTypeMsaVec()
5755 wd.w[i] = (~wd.w[i] & ws.w[i]) | (wd.w[i] & wt.w[i]); in DecodeTypeMsaVec()
6392 msa_reg_t wt; in DecodeTypeImmediate() local
6393 get_msa_register(wt_reg(), &wt); in DecodeTypeImmediate()
6394 BranchHelper_MSA(wt.d[0] == 0 && wt.d[1] == 0); in DecodeTypeImmediate()
6398 msa_reg_t wt; \ in DecodeTypeImmediate()
6399 get_msa_register(wt_reg(), &wt); \ in DecodeTypeImmediate()
6402 if (wt.witdh[i] == 0) { \ in DecodeTypeImmediate()
6422 msa_reg_t wt; in DecodeTypeImmediate() local
6423 get_msa_register(wt_reg(), &wt); in DecodeTypeImmediate()
6424 BranchHelper_MSA(wt.d[0] != 0 || wt.d[1] != 0); in DecodeTypeImmediate()
6428 msa_reg_t wt; \ in DecodeTypeImmediate()
6429 get_msa_register(wt_reg(), &wt); \ in DecodeTypeImmediate()
6432 if (wt.witdh[i] == 0) { \ in DecodeTypeImmediate()