61 references to WasmLowering
ILCompiler.ReadyToRun (61)
Compiler\DependencyAnalysis\ReadyToRun\WasmImportThunk.cs (9)
81MethodSignature INodeWithTypeSignature.Signature => WasmLowering.RaiseSignature(_wasmSignature, _context); 144MethodSignature methodSignature = WasmLowering.RaiseSignature(_wasmSignature, _context); 158isIndirectStructArg[argIndex] = WasmLowering.CurrentArgLowersValueTypeToPassAsByref(argit); 239if (WasmLowering.IsEmptyStruct(paramType)) 247if (WasmLowering.TryGetMultiSegmentLayout(paramType, out WasmValueType slotType, out int slotCount)) 250int slotSize = WasmLowering.GetMultiSegmentSlotSize(slotType); 383if (WasmLowering.IsEmptyStruct(paramType)) 389if (WasmLowering.TryGetMultiSegmentLayout(paramType, out WasmValueType slotType, out int slotCount)) 392int slotSize = WasmLowering.GetMultiSegmentSlotSize(slotType);
Compiler\DependencyAnalysis\ReadyToRun\WasmImportThunkPortableEntrypoint.cs (5)
116signature = WasmLowering.GetStringCtorActualSignature(signature); 121WasmLowering.LoweringFlags flags = WasmLowering.GetLoweringFlags(method) & ~WasmLowering.LoweringFlags.IsUnmanagedCallersOnly; 122return WasmLowering.GetSignature(signature, flags);
Compiler\DependencyAnalysis\ReadyToRun\WasmInterpreterToR2RThunkNode.cs (6)
39MethodSignature INodeWithTypeSignature.Signature => WasmLowering.RaiseSignature(sigForInterpToR2RThunks, _context); 118MethodSignature methodSignature = WasmLowering.RaiseSignature(_wasmSignature, _context); 138isIndirectStructArg[argIndex] = WasmLowering.CurrentArgLowersValueTypeToPassAsByref(argit); 220if (WasmLowering.IsEmptyStruct(paramType)) 225if (WasmLowering.TryGetMultiSegmentLayout(paramType, out WasmValueType slotType, out int slotCount)) 228int slotSize = WasmLowering.GetMultiSegmentSlotSize(slotType);
Compiler\DependencyAnalysis\ReadyToRun\WasmR2RToInterpreterThunkNode.cs (6)
48MethodSignature INodeWithTypeSignature.Signature => WasmLowering.RaiseSignature(_wasmSignature, _context); 126MethodSignature methodSignature = WasmLowering.RaiseSignature(_wasmSignature, _context); 143isIndirectStructArg[argIndex] = WasmLowering.CurrentArgLowersValueTypeToPassAsByref(argit); 228if (WasmLowering.IsEmptyStruct(paramType)) 234else if (WasmLowering.TryGetMultiSegmentLayout(paramType, out WasmValueType slotType, out int slotCount)) 237int slotSize = WasmLowering.GetMultiSegmentSlotSize(slotType);
Compiler\DependencyAnalysis\ReadyToRun\WasmUnboxingStubNode.cs (2)
42MethodSignature INodeWithTypeSignature.Signature => WasmLowering.RaiseSignature(_signature, _context); 255dependencies.Add(context.WasmR2RToInterpreterThunk(WasmLowering.GetSignature(_targetMethod)), "Interpreter fallback for Wasm unboxing target");
Compiler\DependencyAnalysis\ReadyToRun\WasmVirtualDispatchThunkNode.cs (2)
40MethodSignature INodeWithTypeSignature.Signature => WasmLowering.RaiseSignature(_wasmSignature, _context); 116MethodSignature methodSignature = WasmLowering.RaiseSignature(_wasmSignature, _context);
Compiler\DependencyAnalysis\ReadyToRunCodegenNodeFactory.cs (4)
197WasmSignature signature = WasmLowering.GetSignature(thunk.Signature, WasmLowering.LoweringFlags.None); 198WasmSignature targetSignature = WasmLowering.GetSignature(targetMethod); 1517WasmFuncType funcType = WasmLowering.GetSignature(method).FuncType;
JitInterface\CorInfoImpl.ReadyToRun.cs (10)
868WasmSignature wasmSig = WasmLowering.GetSignature(MethodBeingCompiled); 3794WasmLowering.LoweringFlags flags = WasmLowering.GetLoweringFlags(callSig); 3795WasmSignature wasmSig = WasmLowering.GetSignature(sig, flags); 3799if (!flags.HasFlag(WasmLowering.LoweringFlags.IsUnmanagedCallersOnly)) 3820sig = WasmLowering.GetStringCtorActualSignature(sig); 3824WasmLowering.LoweringFlags flags = WasmLowering.GetLoweringFlags(callSig); 3825WasmSignature wasmSig = WasmLowering.GetSignature(sig, flags); 3829if (!flags.HasFlag(WasmLowering.LoweringFlags.IsUnmanagedCallersOnly))
JitInterface\WasmLowering.ReadyToRun.cs (1)
32if (WasmLowering.LowerToAbiType(type) == null)
parent\parent\Common\Compiler\ObjectWriter\WasmObjectWriter.cs (1)
201WasmFuncType signature = WasmLowering.GetSignature(node).FuncType;
parent\parent\Common\JitInterface\CorInfoImpl.cs (3)
4061if (WasmLowering.TryGetMultiSegmentLayout(type, out WasmValueType multiSlotType, out _)) 4068TypeDesc abiType = WasmLowering.LowerToAbiType(type); 4076WasmValueType wasmAbiType = WasmLowering.LowerType(abiType);
PortableCallHelpers\InteropSignature.cs (8)
45public static string GetMethodSignature(MethodDesc method, WasmLowering.LoweringFlags flags = WasmLowering.LoweringFlags.None) 46=> WasmLowering.GetSignature(method.Signature, flags).SignatureString; 58TypeDesc loweredType = WasmLowering.LowerToAbiType(type); 66if (WasmLowering.TryGetMultiSegmentLayout(type, out WasmValueType slotType, out int slotCount)) 67return string.Create(CultureInfo.InvariantCulture, $"{WasmLowering.WasmValueTypeToSigChar(slotType)}{slotCount}"); 77return WasmLowering.WasmValueTypeToSigChar(WasmLowering.LowerType(loweredType)).ToString();
PortableCallHelpers\InterpToNativeGenerator.cs (1)
109$"Cannot generate an interop thunk for '{cookies[signature]}': its signature '{signature}' contains {WasmLowering.DescribeSigChar(e.Char)}, " +
PortableCallHelpers\PInvokeCollector.cs (3)
161AddSignature(signatures, invokeMethod, WasmLowering.LoweringFlags.IsUnmanagedCallersOnly, "pinvoke"); 177AddSignature(signatures, method, WasmLowering.LoweringFlags.IsUnmanagedCallersOnly, "pinvoke"); 181private void AddSignature(Dictionary<string, MethodDesc> signatures, MethodDesc method, WasmLowering.LoweringFlags flags, string kind)