diff --git a/src/core.rs b/src/core.rs index 35adca2e8cfdd1f400e5527967235f0764066a52..7bb4e55e0c02adcca7b82c15bdda4fe2d6fccfcf 100644 --- a/src/core.rs +++ b/src/core.rs @@ -66,6 +66,16 @@ extern "C" { /// /// Returns 0 if none exists. pub fn LLVMGetEnumAttributeValue(A: LLVMAttributeRef) -> u64; + + /// Create a type attribute. + pub fn LLVMCreateTypeAttribute( + C: LLVMContextRef, + KindID: ::libc::c_uint, + type_ref: LLVMTypeRef, + ) -> LLVMAttributeRef; + /// Get the type attribute's value. + pub fn LLVMGetTypeAttributeValue(A: LLVMAttributeRef) -> LLVMTypeRef; + /// Create a string attribute. pub fn LLVMCreateStringAttribute( C: LLVMContextRef, @@ -86,6 +96,7 @@ extern "C" { ) -> *const ::libc::c_char; pub fn LLVMIsEnumAttribute(A: LLVMAttributeRef) -> LLVMBool; pub fn LLVMIsStringAttribute(A: LLVMAttributeRef) -> LLVMBool; + pub fn LLVMIsTypeAttribute(A: LLVMAttributeRef) -> LLVMBool; /// Obtain a Type from a context by its registered name. pub fn LLVMGetTypeByName2(C: LLVMContextRef, Name: *const ::libc::c_char) -> LLVMTypeRef;