Lines Matching refs:WebAssembly

387       Reg = createResultReg(Subtarget->hasAddr64() ? &WebAssembly::I64RegClass  in materializeLoadStoreOperands()
388 : &WebAssembly::I32RegClass); in materializeLoadStoreOperands()
389 unsigned Opc = Subtarget->hasAddr64() ? WebAssembly::CONST_I64 in materializeLoadStoreOperands()
390 : WebAssembly::CONST_I32; in materializeLoadStoreOperands()
462 Register Imm = createResultReg(&WebAssembly::I32RegClass); in zeroExtendToI32()
464 TII.get(WebAssembly::CONST_I32), Imm) in zeroExtendToI32()
467 Register Result = createResultReg(&WebAssembly::I32RegClass); in zeroExtendToI32()
469 TII.get(WebAssembly::AND_I32), Result) in zeroExtendToI32()
492 Register Imm = createResultReg(&WebAssembly::I32RegClass); in signExtendToI32()
494 TII.get(WebAssembly::CONST_I32), Imm) in signExtendToI32()
497 Register Left = createResultReg(&WebAssembly::I32RegClass); in signExtendToI32()
499 TII.get(WebAssembly::SHL_I32), Left) in signExtendToI32()
503 Register Right = createResultReg(&WebAssembly::I32RegClass); in signExtendToI32()
505 TII.get(WebAssembly::SHR_S_I32), Right) in signExtendToI32()
521 Register Result = createResultReg(&WebAssembly::I64RegClass); in zeroExtend()
523 TII.get(WebAssembly::I64_EXTEND_U_I32), Result) in zeroExtend()
543 Register Result = createResultReg(&WebAssembly::I64RegClass); in signExtend()
545 TII.get(WebAssembly::I64_EXTEND_S_I32), Result) in signExtend()
580 assert(MRI.getRegClass(Reg) == &WebAssembly::I32RegClass); in notValue()
582 Register NotReg = createResultReg(&WebAssembly::I32RegClass); in notValue()
584 TII.get(WebAssembly::EQZ_I32), NotReg) in notValue()
591 BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DbgLoc, TII.get(WebAssembly::COPY), in copyValue()
603 createResultReg(Subtarget->hasAddr64() ? &WebAssembly::I64RegClass in fastMaterializeAlloca()
604 : &WebAssembly::I32RegClass); in fastMaterializeAlloca()
606 Subtarget->hasAddr64() ? WebAssembly::COPY_I64 : WebAssembly::COPY_I32; in fastMaterializeAlloca()
622 createResultReg(Subtarget->hasAddr64() ? &WebAssembly::I64RegClass in fastMaterializeConstant()
623 : &WebAssembly::I32RegClass); in fastMaterializeConstant()
624 unsigned Opc = Subtarget->hasAddr64() ? WebAssembly::CONST_I64 in fastMaterializeConstant()
625 : WebAssembly::CONST_I32; in fastMaterializeConstant()
669 Opc = WebAssembly::ARGUMENT_i32; in fastLowerArguments()
670 RC = &WebAssembly::I32RegClass; in fastLowerArguments()
673 Opc = WebAssembly::ARGUMENT_i64; in fastLowerArguments()
674 RC = &WebAssembly::I64RegClass; in fastLowerArguments()
677 Opc = WebAssembly::ARGUMENT_f32; in fastLowerArguments()
678 RC = &WebAssembly::F32RegClass; in fastLowerArguments()
681 Opc = WebAssembly::ARGUMENT_f64; in fastLowerArguments()
682 RC = &WebAssembly::F64RegClass; in fastLowerArguments()
685 Opc = WebAssembly::ARGUMENT_v16i8; in fastLowerArguments()
686 RC = &WebAssembly::V128RegClass; in fastLowerArguments()
689 Opc = WebAssembly::ARGUMENT_v8i16; in fastLowerArguments()
690 RC = &WebAssembly::V128RegClass; in fastLowerArguments()
693 Opc = WebAssembly::ARGUMENT_v4i32; in fastLowerArguments()
694 RC = &WebAssembly::V128RegClass; in fastLowerArguments()
697 Opc = WebAssembly::ARGUMENT_v2i64; in fastLowerArguments()
698 RC = &WebAssembly::V128RegClass; in fastLowerArguments()
701 Opc = WebAssembly::ARGUMENT_v4f32; in fastLowerArguments()
702 RC = &WebAssembly::V128RegClass; in fastLowerArguments()
705 Opc = WebAssembly::ARGUMENT_v2f64; in fastLowerArguments()
706 RC = &WebAssembly::V128RegClass; in fastLowerArguments()
709 Opc = WebAssembly::ARGUMENT_funcref; in fastLowerArguments()
710 RC = &WebAssembly::FUNCREFRegClass; in fastLowerArguments()
713 Opc = WebAssembly::ARGUMENT_externref; in fastLowerArguments()
714 RC = &WebAssembly::EXTERNREFRegClass; in fastLowerArguments()
727 MRI.addLiveIn(WebAssembly::ARGUMENTS); in fastLowerArguments()
772 unsigned Opc = IsDirect ? WebAssembly::CALL : WebAssembly::CALL_INDIRECT; in selectCall()
785 ResultReg = createResultReg(&WebAssembly::I32RegClass); in selectCall()
788 ResultReg = createResultReg(&WebAssembly::I64RegClass); in selectCall()
791 ResultReg = createResultReg(&WebAssembly::F32RegClass); in selectCall()
794 ResultReg = createResultReg(&WebAssembly::F64RegClass); in selectCall()
797 ResultReg = createResultReg(&WebAssembly::V128RegClass); in selectCall()
800 ResultReg = createResultReg(&WebAssembly::V128RegClass); in selectCall()
803 ResultReg = createResultReg(&WebAssembly::V128RegClass); in selectCall()
806 ResultReg = createResultReg(&WebAssembly::V128RegClass); in selectCall()
809 ResultReg = createResultReg(&WebAssembly::V128RegClass); in selectCall()
812 ResultReg = createResultReg(&WebAssembly::V128RegClass); in selectCall()
815 ResultReg = createResultReg(&WebAssembly::FUNCREFRegClass); in selectCall()
818 ResultReg = createResultReg(&WebAssembly::EXTERNREFRegClass); in selectCall()
873 MCSymbolWasm *Table = WebAssembly::getOrCreateFunctionTableSymbol( in selectCall()
890 TII.get(WebAssembly::I32_WRAP_I64)); in selectCall()
891 Register Reg32 = createResultReg(&WebAssembly::I32RegClass); in selectCall()
936 Opc = WebAssembly::SELECT_I32; in selectSelect()
937 RC = &WebAssembly::I32RegClass; in selectSelect()
940 Opc = WebAssembly::SELECT_I64; in selectSelect()
941 RC = &WebAssembly::I64RegClass; in selectSelect()
944 Opc = WebAssembly::SELECT_F32; in selectSelect()
945 RC = &WebAssembly::F32RegClass; in selectSelect()
948 Opc = WebAssembly::SELECT_F64; in selectSelect()
949 RC = &WebAssembly::F64RegClass; in selectSelect()
952 Opc = WebAssembly::SELECT_FUNCREF; in selectSelect()
953 RC = &WebAssembly::FUNCREFRegClass; in selectSelect()
956 Opc = WebAssembly::SELECT_EXTERNREF; in selectSelect()
957 RC = &WebAssembly::EXTERNREFRegClass; in selectSelect()
981 Register Result = createResultReg(&WebAssembly::I32RegClass); in selectTrunc()
983 TII.get(WebAssembly::I32_WRAP_I64), Result) in selectTrunc()
1034 Opc = I32 ? WebAssembly::EQ_I32 : WebAssembly::EQ_I64; in selectICmp()
1037 Opc = I32 ? WebAssembly::NE_I32 : WebAssembly::NE_I64; in selectICmp()
1040 Opc = I32 ? WebAssembly::GT_U_I32 : WebAssembly::GT_U_I64; in selectICmp()
1043 Opc = I32 ? WebAssembly::GE_U_I32 : WebAssembly::GE_U_I64; in selectICmp()
1046 Opc = I32 ? WebAssembly::LT_U_I32 : WebAssembly::LT_U_I64; in selectICmp()
1049 Opc = I32 ? WebAssembly::LE_U_I32 : WebAssembly::LE_U_I64; in selectICmp()
1052 Opc = I32 ? WebAssembly::GT_S_I32 : WebAssembly::GT_S_I64; in selectICmp()
1056 Opc = I32 ? WebAssembly::GE_S_I32 : WebAssembly::GE_S_I64; in selectICmp()
1060 Opc = I32 ? WebAssembly::LT_S_I32 : WebAssembly::LT_S_I64; in selectICmp()
1064 Opc = I32 ? WebAssembly::LE_S_I32 : WebAssembly::LE_S_I64; in selectICmp()
1079 Register ResultReg = createResultReg(&WebAssembly::I32RegClass); in selectICmp()
1103 Opc = F32 ? WebAssembly::EQ_F32 : WebAssembly::EQ_F64; in selectFCmp()
1106 Opc = F32 ? WebAssembly::NE_F32 : WebAssembly::NE_F64; in selectFCmp()
1109 Opc = F32 ? WebAssembly::GT_F32 : WebAssembly::GT_F64; in selectFCmp()
1112 Opc = F32 ? WebAssembly::GE_F32 : WebAssembly::GE_F64; in selectFCmp()
1115 Opc = F32 ? WebAssembly::LT_F32 : WebAssembly::LT_F64; in selectFCmp()
1118 Opc = F32 ? WebAssembly::LE_F32 : WebAssembly::LE_F64; in selectFCmp()
1121 Opc = F32 ? WebAssembly::LE_F32 : WebAssembly::LE_F64; in selectFCmp()
1125 Opc = F32 ? WebAssembly::LT_F32 : WebAssembly::LT_F64; in selectFCmp()
1129 Opc = F32 ? WebAssembly::GE_F32 : WebAssembly::GE_F64; in selectFCmp()
1133 Opc = F32 ? WebAssembly::GT_F32 : WebAssembly::GT_F64; in selectFCmp()
1140 Register ResultReg = createResultReg(&WebAssembly::I32RegClass); in selectFCmp()
1187 if (!WebAssembly::isDefaultAddressSpace(Load->getPointerAddressSpace())) in selectLoad()
1204 Opc = A64 ? WebAssembly::LOAD8_U_I32_A64 : WebAssembly::LOAD8_U_I32_A32; in selectLoad()
1205 RC = &WebAssembly::I32RegClass; in selectLoad()
1208 Opc = A64 ? WebAssembly::LOAD16_U_I32_A64 : WebAssembly::LOAD16_U_I32_A32; in selectLoad()
1209 RC = &WebAssembly::I32RegClass; in selectLoad()
1212 Opc = A64 ? WebAssembly::LOAD_I32_A64 : WebAssembly::LOAD_I32_A32; in selectLoad()
1213 RC = &WebAssembly::I32RegClass; in selectLoad()
1216 Opc = A64 ? WebAssembly::LOAD_I64_A64 : WebAssembly::LOAD_I64_A32; in selectLoad()
1217 RC = &WebAssembly::I64RegClass; in selectLoad()
1220 Opc = A64 ? WebAssembly::LOAD_F32_A64 : WebAssembly::LOAD_F32_A32; in selectLoad()
1221 RC = &WebAssembly::F32RegClass; in selectLoad()
1224 Opc = A64 ? WebAssembly::LOAD_F64_A64 : WebAssembly::LOAD_F64_A32; in selectLoad()
1225 RC = &WebAssembly::F64RegClass; in selectLoad()
1247 if (!WebAssembly::isDefaultAddressSpace(Store->getPointerAddressSpace())) in selectStore()
1265 Opc = A64 ? WebAssembly::STORE8_I32_A64 : WebAssembly::STORE8_I32_A32; in selectStore()
1268 Opc = A64 ? WebAssembly::STORE16_I32_A64 : WebAssembly::STORE16_I32_A32; in selectStore()
1271 Opc = A64 ? WebAssembly::STORE_I32_A64 : WebAssembly::STORE_I32_A32; in selectStore()
1274 Opc = A64 ? WebAssembly::STORE_I64_A64 : WebAssembly::STORE_I64_A32; in selectStore()
1277 Opc = A64 ? WebAssembly::STORE_F32_A64 : WebAssembly::STORE_F32_A32; in selectStore()
1280 Opc = A64 ? WebAssembly::STORE_F64_A64 : WebAssembly::STORE_F64_A32; in selectStore()
1318 unsigned Opc = WebAssembly::BR_IF; in selectBr()
1320 Opc = WebAssembly::BR_UNLESS; in selectBr()
1338 TII.get(WebAssembly::RETURN)); in selectRet()
1383 TII.get(WebAssembly::RETURN)) in selectRet()
1390 TII.get(WebAssembly::UNREACHABLE)); in selectUnreachable()
1432 FastISel *WebAssembly::createFastISel(FunctionLoweringInfo &FuncInfo, in createFastISel()