[DebugInfo] Add macro tracking support to DebugInfoFinder
Extend DebugInfoFinder to collect and expose macro debug information
(DIMacro and DIMacroFile nodes).
Also update ModuleDebugInfoPrinter to display macro information including
the macro type, name, value, and source location.
[AMDGPU][PromoteAlloca] Set !amdgpu.non.volatile if promotion fails
I thought about doing this in a separate pass, but this pass already has all the necessary analysis for this to be a trivial addition.
We can simply set `!amdgpu.non.volatile` if all other attempts to promote the operation failed.
bar syntax and only print input if different from output.
Breaks update_test_checks Function Attrs comment check in the rare
case where the modes mismatch.
IR: Promote "denormal-fp-math" to a first class attribute
Convert "denormal-fp-math" and "denormal-fp-math-f32" into a first
class denormal_fpenv attribute. Previously the query for the effective
deormal mode involved two string attribute queries with parsing. I'm
introducing more uses of this, so it makes sense to convert this
to a more efficient encoding. The old representation was also awkward
since it was split across two separate attributes. The new encoding
just stores the default and float modes as bitfields, largely avoiding
the need to consider if the other mode is set.
The syntax in the common cases looks like this:
`denormal_fpenv(preservesign,preservesign)`
`denormal_fpenv(float: preservesign,preservesign)`
`denormal_fpenv(dynamic,dynamic float: preservesign,preservesign)`
I wasn't sure about reusing the float type name instead of adding a
new keyword. It's parsed as a type but only accepts float. I'm also
debating switching the name to subnormal to match the current
[18 lines not shown]
[ARM][clang] Add some build attributes support (#161106)
"unsafe-fp-math" and related function attribites will be removed in
future, let frontend generate some hints for ARM backend to generate ABI
tags.
[flang][OpenMP][DoConcurrent] Emit declare mapper for records
Extends `do concurrent` device support by emitting compiler-generated
declare mapper ops for live-ins whose types are record types and have
allocatable members.