Merge pull request #67171 from drexin/wip-sp-simp-inject

Support destructiveInjectEnumTag in simple single payload enums with layout strings
This commit is contained in:
Dario Rexin
2023-07-06 19:09:41 -07:00
committed by GitHub
5 changed files with 96 additions and 1 deletions

View File

@@ -2346,6 +2346,17 @@ FUNCTION(EnumSimpleGetEnumTag,
ATTRS(NoUnwind, WillReturn),
EFFECT(NoEffect))
// unsigned swift_enumSimple_destructiveInjectEnumTag(swift::OpaqueValue *address,
// unsigned tag,
// const Metadata *metadata)
FUNCTION(EnumSimpleDestructiveInjectEnumTag,
swift_enumSimple_destructiveInjectEnumTag,
C_CC, AlwaysAvailable,
RETURNS(VoidTy),
ARGS(Int8PtrTy, Int32Ty, TypeMetadataPtrTy),
ATTRS(NoUnwind, WillReturn),
EFFECT(NoEffect))
// unsigned swift_enumFn_getEnumTag(swift::OpaqueValue *address,
// const Metadata *metadata);
FUNCTION(EnumFnGetEnumTag,