This teaches clang how to parse and lower the 'interrupt' and 'naked'
attributes.
This allows interrupt signal handlers to be written.
Differential D28451
[AVR] Add support for the 'interrupt' and 'naked' attributes dylanmckay on Jan 7 2017, 7:08 PM. Authored by
Details This teaches clang how to parse and lower the 'interrupt' and 'naked' This allows interrupt signal handlers to be written.
Diff Detail
Event TimelineComment Actions Lower the 'signal' attribute correctly I had forgotten to lower this attribute and so it would not have been lowered to IR at all. Now it works fine. Comment Actions The patch is also missing Sema tests that ensure the attributes are properly diagnosed when applied to something other than a function, a target other than AVR, arguments are present, etc.
Comment Actions Code review from Aaron
Comment Actions Code review comments
Comment Actions Just one more issue due to the nature of needing a custom parsed attribute.
Comment Actions The new tests aren't really what I had in mind. The codegen tests that should be sema tests can just be rolled into your existing sema tests, by the way.
Comment Actions Code review
Comment Actions Remove 'Attr.setInvalid()'
|
No new undocumented attributes, please.