README.android revision f593dbc85b95a4016faf0d40eb2977755ce96f12
1/*
2 * README.android describes in high-level the LLVM changes that we cannot push
3 * upstream to the llvm.org repository:
4 *  - Changes due to Android's build system.
5 *  - Changes due to Android's toolchain.
6 *  - Changes due to the limitations in Android-based consumer electronics.
7 *
8 * Some of them are to-dos. If and when they are done, there will no longer be
9 * merge conflicts with upstream on those parts.
10 *
11 * The file contains useful hints when we try to resolve future 3-way merge
12 * conflicts.
13 */
14
15* For Honeycomb: Synced to upstream r112344.
16* For Honeycomb MR1: Synced to upstream r119309
17* For Honeycomb MR2: Synced to upstream r119309
18* For Ice Cream Sandwich: Synced to upstream r135569
19* For Ice Cream Sandwich MR1: Synced to upstream r142530
20
21* Recent downstreaming on 2011/10/22: From r135569 to 142530 (Contact sliao & logan for merge questions.)
22* Recent downstreaming on 2011/7/21: From r135360 to 135569 (Contact sliao & logan for merge questions.)
23* Recent downstreaming on 2011/7/19: From r134306 to 135360 (Contact sliao for merge questions.)
24* Recent downstreaming on 2011/7/2: From r133718 to 134306 (Contact sliao for merge questions.)
25* Recent downstreaming on 2011/6/30: From r133240 to 133718 (Contact sliao for merge questions.)
26  * This downstreaming could have broken bitcode compatibility
27    * Upstream was migrating from 2.7 bitcode to 3.0 bitcode.
28    * See the 4 commits on 2011/6/17:
29    ==> * 4f6bab9 - Drop the "2" suffix on some enums. (13 days ago) <Chris Lattner>
30    ==> * 96a74c5 - remove support for a bunch of obsolete instruction encodings and other backward compatibility hacks. (13 days ago) <Chris Lattner>
31        * 738f05a - Remove a useless copy of MCELFStreamer. Patch by Logan Chien! (13 days ago) <Benjamin Kramer>
32        * 981d826 - getSuccWeight returns now default 0 if Weights vector is empty. (13 days ago) <Jakub Staszak>
33        * 799a58a55 - missed a file. (13 days ago) <Chris Lattner>
34    ==> * 9d61dd9 - Remove some "2" suffixes from the metadata enums now that "1" is gone. (13 days ago) <Chris Lattner>
35    ==> * 020a5a4 - remove bitcode reader support for LLVM 2.7 metadata encoding. (13 days ago) <Chris Lattner>
36  * We maintain compatibility because Honeycomb SDK is out there.
37    * Our bitcode reader can read both 2.7 and 3.0 versions. Writer is tracking upstream.
38* Recent downstreaming on 2011/6/22: From r129128 to 133240 (Contact sliao@ for merge questions.)
39* Recent downstreaming on 2011/4/8: From r127116 to 129128 (Contact sliao@ for merge questions.)
40* Recent downstreaming on 2011/3/11: From r119309 to 127116 (Contact sliao@ for merge questions.)
41
42* We add 40+ Android's *.mk files that are specific to Android's build system.
43
44* All the configuration files because we don't have configure/make/make-install
45
46* Changes for enabling both host and device builds.
47
48* All the tblgen work to enable Android to build a generator-generator binary
49  and then run it in the middle of Android build process.
50
51* Explicitly include <cctype> header since is*() are not builtin functions in
52Android toolchain.
53
54* Code changes to make Android's toolchain stop outputting warnings. (This part
55  should be pushed upstream eventually.)
56
57* lib/Target/{X86,ARM}/AsmPrinter/{X86,ARM}AsmPrinter.cpp
58   Move from lib/Target/{X86,ARM}/{X86,ARM}AsmPrinter.cpp.
59   AsmPrinter is only needed in Android when disassembly functionality
60      is desired to be included.
61
62* Our ARM code generation fixes that upstream hasn't accepted yet. (This
63  conflict will be resolved eventually, but there will always be time lag.)
64
65* Assorted size optimizations because Android-based consumer electronics
66  need them.
67