[PATCH] [Inliner] Use whitelist instead of blacklist when checking function attribute compatibility and make the check stricter
ahatanak at gmail.com
Thu Apr 23 14:33:49 PDT 2015
Update patch attached.
The following are the changes I made to the table-gen file:
- Added attributes classes which derive from the base class. This enables distinguishing enum attributes from string attributes and key-value attributes from attributes that don't have values.
- Added target-independent string attributes. Inliner uses these attributes to check caller-callee compatibility.
- Added two classes to describe function inlining rules.
I'm mainly interested in whether the table-gen syntax is easy to understand and is expressive enough to describe most of the inlining rules that are not so complex. Also, as I mentioned before, I think it's possible to make some improvements to it later so that it can be used to auto-generate code for other passes (e.g., IR verifier) or for documentation.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 22566 bytes
Desc: not available
More information about the llvm-commits