[llvm-commits] [llvm] r148937 - /llvm/trunk/include/llvm-c/Core.h

Chandler Carruth chandlerc at gmail.com
Tue Jan 24 23:40:15 PST 2012


Author: chandlerc
Date: Wed Jan 25 01:40:15 2012
New Revision: 148937

URL: http://llvm.org/viewvc/llvm-project?rev=148937&view=rev
Log:
Revert a tiny bit of r148553 which extended LLVM's function attributes
to 64-bits, and added a new attribute in bit #32. Specifically, remove
this new attribute from the enum used in the C API. It's not yet clear
what the best approach is for exposing these new attributes in the
C API, and several different proposals are on the table. Until then, we
can simply not expose this bit in the API at all.

Also, I've reverted a somewhat unrelated change in the same revision
which switched from "1 << 31" to "1U << 31" for the top enum. While "1
<< 31" is technically undefined behavior, implementations DTRT here.
However, MS and -pedantic mode warn about non-'int' type enumerator
values. If folks feel strongly about this I can put the 'U' back in, but
it seemed best to wait for the proper solution.

Modified:
    llvm/trunk/include/llvm-c/Core.h

Modified: llvm/trunk/include/llvm-c/Core.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm-c/Core.h?rev=148937&r1=148936&r2=148937&view=diff
==============================================================================
--- llvm/trunk/include/llvm-c/Core.h (original)
+++ llvm/trunk/include/llvm-c/Core.h Wed Jan 25 01:40:15 2012
@@ -118,8 +118,12 @@
     LLVMStackAlignment = 7<<26,
     LLVMReturnsTwice = 1 << 29,
     LLVMUWTable = 1 << 30,
-    LLVMNonLazyBind = 1U << 31,
-    LLVMAddressSafety = 1ULL << 32
+    LLVMNonLazyBind = 1 << 31
+
+    // FIXME: This attribute is currently not included in the C API as
+    // a temporary measure until the API/ABI impact to the C API is understood
+    // and the path forward agreed upon.
+    //LLVMAddressSafety = 1ULL << 32
 } LLVMAttribute;
 
 typedef enum {





More information about the llvm-commits mailing list