Skip to content
This repository has been archived by the owner on Mar 2, 2023. It is now read-only.

Outlining code bugs #9

Open
1 of 12 tasks
yotann opened this issue Mar 19, 2020 · 2 comments
Open
1 of 12 tasks

Outlining code bugs #9

yotann opened this issue Mar 19, 2020 · 2 comments
Labels
bug Something isn't working

Comments

@yotann
Copy link
Owner

yotann commented Mar 19, 2020

There are various cases in the outlining code that I haven't fully thought through, and some of them are probably handled incorrectly. If we try to perform actual outlining, this will lead to incorrect code being generated.

  • various TODOs and FIXMEs in lib/Outlining
  • tests should be much more thorough
  • if the original function has an address space, section, comdat, or garbage collector, how should we handle them?
  • parameter attributes may be handled incorrectly
  • function attributes may be handled incorrectly
    • see constructFunction in llvm/lib/Transforms/Utils/CodeExtractor.cpp
  • metadata may be handled incorrectly
    • debug
    • TBAA
    • noalias
    • callback
    • llvm.loop
    • prof
@yotann yotann added the bug Something isn't working label Mar 19, 2020
@regehr
Copy link

regehr commented Mar 19, 2020

most of this is hopefully not too hard, I think most attributes and metadata can be soundly dropped

@yotann
Copy link
Owner Author

yotann commented Mar 19, 2020

For now, I just want the outliner to extract valid functions without crashing. We can worry later about performing the outlining correctly.

@yotann yotann transferred this issue from yotann/bcdb-private Apr 12, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants