mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-23 01:24:30 +00:00
Attributes Rewrite
Convert the internal representation of the Attributes class into a pointer to an opaque object that's uniqued by and stored in the LLVMContext object. The Attributes class then becomes a thin wrapper around this opaque object. Eventually, the internal representation will be expanded to include attributes that represent code generation options, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165917 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -180,7 +180,7 @@ public:
|
||||
// Function Attributes are stored at ~0 index
|
||||
Attributes::Builder B;
|
||||
B.addAttribute(N);
|
||||
addAttribute(~0U, Attributes::get(B));
|
||||
addAttribute(~0U, Attributes::get(getContext(), B));
|
||||
}
|
||||
|
||||
/// removeFnAttr - Remove function attributes from this function.
|
||||
@ -280,7 +280,7 @@ public:
|
||||
void setDoesNotAlias(unsigned n) {
|
||||
Attributes::Builder B;
|
||||
B.addAttribute(Attributes::NoAlias);
|
||||
addAttribute(n, Attributes::get(B));
|
||||
addAttribute(n, Attributes::get(getContext(), B));
|
||||
}
|
||||
|
||||
/// @brief Determine if the parameter can be captured.
|
||||
@ -291,7 +291,7 @@ public:
|
||||
void setDoesNotCapture(unsigned n) {
|
||||
Attributes::Builder B;
|
||||
B.addAttribute(Attributes::NoCapture);
|
||||
addAttribute(n, Attributes::get(B));
|
||||
addAttribute(n, Attributes::get(getContext(), B));
|
||||
}
|
||||
|
||||
/// copyAttributesFrom - copy all additional attributes (those not needed to
|
||||
|
Reference in New Issue
Block a user