Non-allocatable Global Named Register

Description

Non-allocatable Global Named Register

This patch implements global named registers in Clang, lowering to the just
created intrinsics in LLVM (@llvm.read/write_register). A new type of LValue
had to be created (Register), which just adds support to carry the metadata
node containing the name of the register. Two new methods to emit loads and
stores interoperate with another to emit the named metadata node.

No guarantees are being made and only non-allocatable global variable named
registers are being supported. Local named register support is unchanged.

Details

Committed
rengolinMay 19 2014, 11:15 AM
Parents
rL209148: Removing an XFAIL which shouldn't apply. We no longer care about MSVC 9, and…
Branches
Unknown
Tags
Unknown