Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(114)

Side by Side Diff: tools/llvm/unsupported/non_bitcode_symbols.txt

Issue 8391032: Part 2 of 3: Moving tools/llvm to pnacl/ (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: '' Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 # NOTE: this is a machine readable list of symbols that can legally be used
2 # by bitcode without being defined by bitcode because they are
3 # * linker-defined
4 # * provided by native libraries
5 # * known to ALL llc backends
6 # Empty lines and lines starting with '#' are ignored
7 #
8 # One way to use this list and check a bunch of pexes is:
9 #
10 # for i in scons-out/nacl-x86-64-pnacl/obj/tests/*/*pexe ; do
11 # echo $i
12 # toolchain/pnacl_linux_x86_64/arm-none-linux-gnueabi/bin/llvm-ld \
13 # -o xxx $i --nacl-abi-check --nacl-legal-undefs \
14 # tools/llvm/non_bitcode_symbols.txt
15 #
16 # done
17 #
18 ######################################################################
19
20 # llvm buitins
21 # TODO(robertm): there are likely a few more missing
22 llvm.memcpy.p0i8.p0i8.i32
23 llvm.memset.p0i8.i32
24 llvm.memset.p0i8.i64
25 llvm.memmove.p0i8.p0i8.i32
26
27 llvm.memory.barrier
28 llvm.atomic.cmp.swap.i32.p0i32
29 llvm.atomic.load.add.i32.p0i32
30
31 # used to abstract away exception handling
32 llvm.eh.exception
33 llvm.eh.selector
34 llvm.eh.typeid.for
35
36 llvm.flt.rounds
37
38 # unwind related
39 llvm.returnaddress
40 llvm.eh.dwarf.cfa
41
42 # TODO(robertm): ????
43 llvm.stackrestore
44 llvm.stacksave
45
46 # for example stores to zero addresses get optimized to this
47 llvm.trap
48
49 # TODO(robertm): ???? try to eliminate this
50 llvm.uadd.with.overflow.i32
51
52 # va_list intrinsics
53 llvm.va_end
54 llvm.va_start
55
56 # linkerdefined symbols
57 __fini_array_end
58 __fini_array_start
59 __init_array_end
60 __init_array_start
61 __preinit_array_end
62 __preinit_array_start
63 __tls_template_end
64 __tls_template_start
65 __tls_template_tdata_end
66
67 # currently provided by libgcc_eh and referenced by our startup code
68 # Could be replaced by dummies when exceptions are not used
69 __deregister_frame_info
70 __register_frame_info
71
72 # these are most of the remaining functions provided by libgcc_eh
73 _Unwind_DeleteException
74 _Unwind_GetDataRelBase
75 _Unwind_GetIP
76 _Unwind_GetLanguageSpecificData
77 _Unwind_GetRegionStart
78 _Unwind_GetTextRelBase
79 _Unwind_PNaClSetResult0
80 _Unwind_PNaClSetResult1
81 _Unwind_RaiseException
82 _Unwind_Resume_or_Rethrow
83 _Unwind_SetIP
84 _Unwind_Backtrace
85 _Unwind_GetCFA
86
87 # tls related intrinsics
88 # TODO(sehr): maybe mark them as intrinsics
89 __nacl_tdb_effective_payload_size
90 __nacl_tdb_offset_in_tls
91 __nacl_tls_aligment
92
93 # misc
94 __nacl_return_address_size
95
96 # setjmp/longjmp
97 # TODO(robertm): determine whether these are intrinsics or function calls
98 longjmp
99 setjmp
100
101 # math
102 # these may occur even if they not really used because of the
103 # tools/llvm/llvm-preserve.ll magic
104 # c.f.: http://code.google.com/p/nativeclient/issues/detail?id=842
105 cos
106 cosf
107 pow
108 powf
109 sin
110 sinf
111 sqrt
112 sqrtf
113 fabs
114
115 # a weak symbol declared in: src/untrusted/pthread/nc_thread.c
116 __thread_exit_hook
117
118 # these need to be investigated:
119 memmove
120 llvm.sqrt.f64
121 llvm.sqrt.f32
122
OLDNEW
« no previous file with comments | « tools/llvm/unsupported/llvm-cs-toolchain-creator.sh ('k') | tools/llvm/unsupported/patch-libstdc++ » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698