Add __chkstk on i686-pc-windows-gnu. #588
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
libLLVMSupport.a(DynamicLibrary.cpp.obj) references
___chkstk
, which is an alias of__alloca
in libgcc. This crate provided__alloca
, but libgcc's implementation was also pulled in by the linker due to the reference to___chkstk
, causing a multiple definition linker error. Providing that symbol here prevents that.Fixes #585
The reference to
___chkstk
is due to https://github.com/llvm/llvm-project/blob/ccc02563f4d620d4d29a1cbd2c463871cc54745b/llvm/lib/Support/Windows/explicit_symbols.inc#L16-L18 (or possibly the reference above to__chkstk
due to i386 name rules adding another underscore), not due to the compiler actually generating calls to it.