README.android revision 57da390bbc106b3afc38167b4886482492e78398
18d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao/*
28d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao * README.android describes in high-level the LLVM changes that we cannot push
38d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao * upstream to the llvm.org repository:
48d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao *  - Changes due to Android's build system.
58d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao *  - Changes due to Android's toolchain.
68d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao *  - Changes due to the limitations in Android-based consumer electronics.
78d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao *
88d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao * Some of them are to-dos. If and when they are done, there will no longer be
98d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao * merge conflicts with upstream on those parts.
108d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao *
118d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao * The file contains useful hints when we try to resolve future 3-way merge
128d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao * conflicts.
138d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao */
148d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
1557da390bbc106b3afc38167b4886482492e78398Shih-wei Liao* Synced to r127116.
1657da390bbc106b3afc38167b4886482492e78398Shih-wei Liao
178d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* We add 40+ Android's *.mk files that are specific to Android's build system.
188d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
198d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* All the configuration files because we don't have configure/make/make-install
208d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
218d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* Changes for enabling both host and device builds.
228d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
238d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* All the tblgen work to enable Android to build a generator-generator binary
248d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao  and then run it in the middle of Android build process.
258d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
268d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* Explicitly include <cctype> header since is*() are not builtin functions in
278d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei LiaoAndroid toolchain.
288d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
298d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* Code changes to make Android's toolchain stop outputting warnings. (This part
308d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao  should be pushed upstream eventually.)
318d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
328d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* lib/Target/{X86,ARM}/AsmPrinter/{X86,ARM}AsmPrinter.cpp
338d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao   Move from lib/Target/{X86,ARM}/{X86,ARM}AsmPrinter.cpp.
348d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao   AsmPrinter is only needed in Android when disassembly functionality
358d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao      is desired to be included.
368d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
378d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* Our ARM code generation fixes that upstream hasn't accepted yet. (This
388d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao  conflict will be resolved eventually, but there will always be time lag.)
398d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao
408d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao* Assorted size optimizations because Android-based consumer electronics
418d3892a530a26f66ead4fbfc4d36d3c8a917b295Shih-wei Liao  need them.
42