lto: Clean up C libLTO interfaces pertaining to linker flags.
authorPeter Collingbourne <peter@pcc.me.uk>
Mon, 29 Jun 2015 23:09:12 +0000 (23:09 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Mon, 29 Jun 2015 23:09:12 +0000 (23:09 +0000)
Specifically, remove the dependent library interface and replace the existing
linker option interface with a new one that returns a single list of flags.

Differential Revision: http://reviews.llvm.org/D10820

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241018 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm-c/lto.h
tools/lto/lto.cpp
tools/lto/lto.exports

index 0ccb0e9a584c0c85216ac0aef240e5f1297b74d9..42c05a2fc59e73a3b8e49bb93e294038c2656a21 100644 (file)
@@ -40,7 +40,7 @@ typedef bool lto_bool_t;
  * @{
  */
 
-#define LTO_API_VERSION 15
+#define LTO_API_VERSION 16
 
 /**
  * \since prior to LTO_API_VERSION=3
@@ -280,49 +280,15 @@ lto_module_get_symbol_attribute(lto_module_t mod, unsigned int index);
 
 
 /**
- * Returns the number of dependent libraries in the object module.
+ * Returns the module's linker options.
  *
- * Deprecated. Now returns an empty list.
- *
- * \since LTO_API_VERSION=8
- */
-extern unsigned int
-lto_module_get_num_deplibs(lto_module_t mod);
-
-
-/**
- * Returns the ith dependent library in the module.
- *
- * Deprecated. Now always returns null.
- *
- * \since LTO_API_VERSION=8
- */
-extern const char*
-lto_module_get_deplib(lto_module_t mod, unsigned int index);
-
-
-/**
- * Returns the number of linker options in the object module.
- *
- * Each linker option may consist of multiple flags. It is the linker's
- * responsibility to split the flags using a platform-specific mechanism.
- *
- * \since LTO_API_VERSION=8
- */
-extern unsigned int
-lto_module_get_num_linkeropts(lto_module_t mod);
-
-
-/**
- * Returns the ith linker option in the module.
- *
- * Each linker option may consist of multiple flags. It is the linker's
+ * The linker options may consist of multiple flags. It is the linker's
  * responsibility to split the flags using a platform-specific mechanism.
  *
- * \since LTO_API_VERSION=8
+ * \since LTO_API_VERSION=16
  */
 extern const char*
-lto_module_get_linkeropt(lto_module_t mod, unsigned int index);
+lto_module_get_linkeropts(lto_module_t mod);
 
 
 /**
index c77702da0e86d4f60b778faa0da993b9c8744d2c..5c712f18c9eea61f8154adaa5097d887dd699f12 100644 (file)
@@ -223,21 +223,7 @@ lto_symbol_attributes lto_module_get_symbol_attribute(lto_module_t mod,
   return unwrap(mod)->getSymbolAttributes(index);
 }
 
-unsigned int lto_module_get_num_deplibs(lto_module_t mod) {
-  return 0;
-}
-
-const char* lto_module_get_deplib(lto_module_t mod, unsigned int index) {
-  return nullptr;
-}
-
-unsigned int lto_module_get_num_linkeropts(lto_module_t mod) {
-  return 1;
-}
-
-const char* lto_module_get_linkeropt(lto_module_t mod, unsigned int index) {
-  if (index != 0)
-    return nullptr;
+const char* lto_module_get_linkeropts(lto_module_t mod) {
   return unwrap(mod)->getLinkerOpts();
 }
 
index b2078061fec48b5c85c1b35ad699c46e8ac7cf76..8bc2b0f9d312f240b8edcf71bc3753b23c53a74e 100644 (file)
@@ -8,10 +8,7 @@ lto_module_create_from_memory
 lto_module_create_from_memory_with_path
 lto_module_create_in_local_context
 lto_module_create_in_codegen_context
-lto_module_get_deplib
-lto_module_get_linkeropt
-lto_module_get_num_deplibs
-lto_module_get_num_linkeropts
+lto_module_get_linkeropts
 lto_module_get_num_symbols
 lto_module_get_symbol_attribute
 lto_module_get_symbol_name