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
Fair, I do wonder in the long run if, during LoweringPrepare, we want to promote array values as globals so we get closer to mirror traditional LLVM codegen output more closely, such LLVM output will likely be more willing to allow optimizations in the LLVM pipeline to later kick-in. Thoughts?
Well, yes. I faced with the same issue in the #393 . And I'm sure we should not touch LoweringPrepare until we fix unimplemented features. Actually, I already tried for that PR - and it was terrible, so I discarded all the changes.
And the original codegen emit memcpy or memset approximately here. And it's important to notice, that it's done on the codegen stage. I.e. memcpy from a global var is also created there.
I add LLVM IR just for the reference (for the example from above):
So I would say - first we need to implement all this unimplemented features and take a look, what do we get. And only after do something in the lowering prepare.
Well, yes. I faced with the same issue in the #393 . And I'm sure we should not touch
LoweringPrepare
until we fix unimplemented features. Actually, I already tried for that PR - and it was terrible, so I discarded all the changes.And the original codegen emit
memcpy
ormemset
approximately here. And it's important to notice, that it's done on the codegen stage. I.e. memcpy from a global var is also created there.I add LLVM IR just for the reference (for the example from above):
So I would say - first we need to implement all this unimplemented features and take a look, what do we get. And only after do something in the lowering prepare.
Originally posted by @gitoleg in #370 (comment)
The text was updated successfully, but these errors were encountered: