Deleted Added
full compact
lto.h (193323) lto.h (193574)
1/*===-- llvm-c/lto.h - LTO Public C Interface ---------------------*- C -*-===*\
2|* *|
3|* The LLVM Compiler Infrastructure *|
4|* *|
5|* This file is distributed under the University of Illinois Open Source *|
6|* License. See LICENSE.TXT for details. *|
7|* *|
8|*===----------------------------------------------------------------------===*|

--- 5 unchanged lines hidden (view full) ---

14\*===----------------------------------------------------------------------===*/
15
16#ifndef LTO_H
17#define LTO_H 1
18
19#include <stdbool.h>
20#include <stddef.h>
21
1/*===-- llvm-c/lto.h - LTO Public C Interface ---------------------*- C -*-===*\
2|* *|
3|* The LLVM Compiler Infrastructure *|
4|* *|
5|* This file is distributed under the University of Illinois Open Source *|
6|* License. See LICENSE.TXT for details. *|
7|* *|
8|*===----------------------------------------------------------------------===*|

--- 5 unchanged lines hidden (view full) ---

14\*===----------------------------------------------------------------------===*/
15
16#ifndef LTO_H
17#define LTO_H 1
18
19#include <stdbool.h>
20#include <stddef.h>
21
22#define LTO_API_VERSION 3
23
22typedef enum {
23 LTO_SYMBOL_ALIGNMENT_MASK = 0x0000001F, /* log2 of alignment */
24 LTO_SYMBOL_PERMISSIONS_MASK = 0x000000E0,
25 LTO_SYMBOL_PERMISSIONS_CODE = 0x000000A0,
26 LTO_SYMBOL_PERMISSIONS_DATA = 0x000000C0,
27 LTO_SYMBOL_PERMISSIONS_RODATA = 0x00000080,
28 LTO_SYMBOL_DEFINITION_MASK = 0x00000700,
29 LTO_SYMBOL_DEFINITION_REGULAR = 0x00000100,

--- 173 unchanged lines hidden (view full) ---

203 * Sets the location of the "gcc" to run. If not set, libLTO will search for
204 * "gcc" on the path.
205 */
206extern void
207lto_codegen_set_gcc_path(lto_code_gen_t cg, const char* path);
208
209
210/**
24typedef enum {
25 LTO_SYMBOL_ALIGNMENT_MASK = 0x0000001F, /* log2 of alignment */
26 LTO_SYMBOL_PERMISSIONS_MASK = 0x000000E0,
27 LTO_SYMBOL_PERMISSIONS_CODE = 0x000000A0,
28 LTO_SYMBOL_PERMISSIONS_DATA = 0x000000C0,
29 LTO_SYMBOL_PERMISSIONS_RODATA = 0x00000080,
30 LTO_SYMBOL_DEFINITION_MASK = 0x00000700,
31 LTO_SYMBOL_DEFINITION_REGULAR = 0x00000100,

--- 173 unchanged lines hidden (view full) ---

205 * Sets the location of the "gcc" to run. If not set, libLTO will search for
206 * "gcc" on the path.
207 */
208extern void
209lto_codegen_set_gcc_path(lto_code_gen_t cg, const char* path);
210
211
212/**
213 * Sets the location of the assembler tool to run. If not set, libLTO
214 * will use gcc to invoke the assembler.
215 */
216extern void
217lto_codegen_set_assembler_path(lto_code_gen_t cg, const char* path);
218
219
220/**
211 * Adds to a list of all global symbols that must exist in the final
212 * generated code. If a function is not listed, it might be
213 * inlined into every usage and optimized away.
214 */
215extern void
216lto_codegen_add_must_preserve_symbol(lto_code_gen_t cg, const char* symbol);
217
218

--- 32 unchanged lines hidden ---
221 * Adds to a list of all global symbols that must exist in the final
222 * generated code. If a function is not listed, it might be
223 * inlined into every usage and optimized away.
224 */
225extern void
226lto_codegen_add_must_preserve_symbol(lto_code_gen_t cg, const char* symbol);
227
228

--- 32 unchanged lines hidden ---