You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
compnerd opened this issue
Oct 13, 2017
· 3 comments
Assignees
Labels
bugA deviation from expected or documented behavior. Also: expected but undesirable behavior.compilerThe Swift compiler in itselfIRGenLLVM IR generationWindowsPlatform: Windows
This breaks the SwiftOnoneSupport build as well as simple programs. More interestingly, the IR generated by swiftc fed to llc will generate the proper assembly, but swiftc will not generate the correct assembly.
IRGen in swift will annotate the appropriately DLL Storage to the variable, however, the backend will not perform the appropriate transformation. My guess is that since the attachment of MO_DLLIMPORT occurs normally in CodeGenPrepare which is not run by the swift LLVM pipeline, we are missing the attribute being attached to it.
This prevents the compilation of programs for the Windows targets.
The text was updated successfully, but these errors were encountered:
Had a quick look at this. This is with `-Onone` in my build, and the only differences in the pipeline is that the first pass is TTI rather than TLI. TLI is pushed below the `Assumption Cache Tracker` pass. We also do not run the `MachineDominator Tree Construction` and `Machine Natural Loop Construction` passes. The FastISel will fail due to the tail call, and fallback to the SDAG based ISel.
bugA deviation from expected or documented behavior. Also: expected but undesirable behavior.compilerThe Swift compiler in itselfIRGenLLVM IR generationWindowsPlatform: Windows
Additional Detail from JIRA
md5: 63598ed8ff1db991e60351a49d679fb5
Issue Description:
This breaks the SwiftOnoneSupport build as well as simple programs. More interestingly, the IR generated by
swiftc
fed tollc
will generate the proper assembly, butswiftc
will not generate the correct assembly.IRGen in swift will annotate the appropriately DLL Storage to the variable, however, the backend will not perform the appropriate transformation. My guess is that since the attachment of
MO_DLLIMPORT
occurs normally inCodeGenPrepare
which is not run by the swift LLVM pipeline, we are missing the attribute being attached to it.This prevents the compilation of programs for the Windows targets.
The text was updated successfully, but these errors were encountered: