swift icon indicating copy to clipboard operation
swift copied to clipboard

[move-only] Do not attempt to lazily deserialize the moveonly deinit table in IRGen.

Open gottesmm opened this issue 2 years ago • 1 comments

The reason to avoid this is if we attempt to lazily deserialize the moveonly deinit table, we may also attempt to deserialize a deinit function. This would result in us breaking the invariant that we no longer deserialize SILFunctions once we are in LoweredSIL.

If we fail to lazily deserialize, we instead just call the deinit via the destroy value witness of the type.

This only affects builds built with asserts enabled since llvm_unreachable is compiled out when NDEBUG is set.

rdar://110496872

gottesmm avatar Jun 09 '23 17:06 gottesmm

@swift-ci test

gottesmm avatar Jun 09 '23 18:06 gottesmm

@swift-ci please Build Toolchain macOS Platform

glessard avatar Jun 09 '23 18:06 glessard

@swift-ci test

gottesmm avatar Jun 09 '23 19:06 gottesmm

@swift-ci please Build Toolchain macOS Platform

gottesmm avatar Jun 09 '23 19:06 gottesmm