-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
irutil: add instruction and terminator operand use-tracking and value update API #1
base: master
Are you sure you want to change the base?
Commits on Dec 21, 2019
-
irutil: add instruction and terminator operand use-tracking and value…
… update API Rather than adding the use-tracking to llir/llvm/ir, we currently add this to irutil so we may get more experience with the API and see if its the right fit for instruction and terminator operand use-tracking and value update. Note: this is the stronger version of the API, as outlined by @pwaller in llir/llvm#42 (comment) Notably, operands are tracked by pointer (*value.Value) which also enables updating values using the same API. Fixes llir/llvm#42.
Configuration menu - View commit details
-
Copy full SHA for 3887e0d - Browse repository at this point
Copy the full SHA 3887e0dView commit details
Commits on Dec 22, 2019
-
irutil: add preliminary support for Comment pseudo-instruciton in Ins…
…tUses Note: we should try to arrive at a more general way of handling custom user-defined instructions.
Configuration menu - View commit details
-
Copy full SHA for 118a899 - Browse repository at this point
Copy the full SHA 118a899View commit details
Commits on Dec 23, 2019
-
irutil: add backing slice to avoid memory allocation in use-tracking API
As suggested by @pwaller in llir#1 (comment)
Configuration menu - View commit details
-
Copy full SHA for 4d89531 - Browse repository at this point
Copy the full SHA 4d89531View commit details -
irutil: return backing slice also from instructions which have no val…
…ue operands Without this change, repeated invokations of InstUses (as used in FuncUses) would result in incorrect results. for _, inst := range block.Insts { backing = InstUses(backing, inst) }
Configuration menu - View commit details
-
Copy full SHA for a8eb359 - Browse repository at this point
Copy the full SHA a8eb359View commit details -
irutil: refine use-tracking API to operate on []Use instead of []*Use
Since we already track a pointer to the used value in the Use structure, we can pass Use by value. This should help reduce memory allocations.
Configuration menu - View commit details
-
Copy full SHA for 9e472c0 - Browse repository at this point
Copy the full SHA 9e472c0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 224a423 - Browse repository at this point
Copy the full SHA 224a423View commit details
Commits on Dec 24, 2019
-
irutil: add dead code elimination as use-tracking API example
Note: this implementation of dce is a toy example. It does not take deep value uses into account, and as such, cannot handle use tracking when local variables are used within constant expressions. This issue would be resolved when irutil.FuncUses is extended to handle deep value use tracking.
Configuration menu - View commit details
-
Copy full SHA for a88117e - Browse repository at this point
Copy the full SHA a88117eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9bd4e87 - Browse repository at this point
Copy the full SHA 9bd4e87View commit details -
Configuration menu - View commit details
-
Copy full SHA for 503ea99 - Browse repository at this point
Copy the full SHA 503ea99View commit details
Commits on Dec 29, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 0b10264 - Browse repository at this point
Copy the full SHA 0b10264View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5ecb5df - Browse repository at this point
Copy the full SHA 5ecb5dfView commit details