Toyomasa Watarai
/
armcc_info
Describes predefine macros for mbed online compiler (armcc)
main.cpp@2:fe7a36257939, 2015-04-13 (annotated)
- Committer:
- MACRUM
- Date:
- Mon Apr 13 22:48:06 2015 +0900
- Revision:
- 2:fe7a36257939
- Parent:
- 1:5d5b5bd67e5b
- Child:
- 3:b802baa84f98
Fix compiler maro name
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
MACRUM | 0:99f7e7890e03 | 1 | #include "mbed.h" |
MACRUM | 0:99f7e7890e03 | 2 | |
MACRUM | 0:99f7e7890e03 | 3 | Serial pc(USBTX, USBRX); // tx, rx |
MACRUM | 0:99f7e7890e03 | 4 | |
MACRUM | 0:99f7e7890e03 | 5 | int main() { |
MACRUM | 1:5d5b5bd67e5b | 6 | #ifdef MBED_USERNAME |
MACRUM | 1:5d5b5bd67e5b | 7 | #define STRING(str) pc.printf(#str); |
MACRUM | 1:5d5b5bd67e5b | 8 | pc.printf("mbed username: "); |
MACRUM | 1:5d5b5bd67e5b | 9 | STRING(MBED_USERNAME); |
MACRUM | 1:5d5b5bd67e5b | 10 | pc.printf("\n\n"); |
MACRUM | 1:5d5b5bd67e5b | 11 | #endif |
MACRUM | 2:fe7a36257939 | 12 | #ifdef __CC_ARM |
MACRUM | 0:99f7e7890e03 | 13 | pc.printf("Built with ARM compiler\n\n"); |
MACRUM | 0:99f7e7890e03 | 14 | pc.printf("ARM Compiler version : %d\n", __ARMCC_VERSION); |
MACRUM | 0:99f7e7890e03 | 15 | |
MACRUM | 0:99f7e7890e03 | 16 | #ifdef __ARM_NEON__ |
MACRUM | 0:99f7e7890e03 | 17 | pc.printf("NEON is available\n"); |
MACRUM | 0:99f7e7890e03 | 18 | #else |
MACRUM | 0:99f7e7890e03 | 19 | pc.printf("NEON is not available\n"); |
MACRUM | 0:99f7e7890e03 | 20 | #endif |
MACRUM | 0:99f7e7890e03 | 21 | |
MACRUM | 0:99f7e7890e03 | 22 | #ifdef __APCS_INTERWORK |
MACRUM | 0:99f7e7890e03 | 23 | pc.printf("ARM/Thumb Interworking is used\n"); |
MACRUM | 0:99f7e7890e03 | 24 | #endif |
MACRUM | 0:99f7e7890e03 | 25 | |
MACRUM | 0:99f7e7890e03 | 26 | #ifdef __APCS_ROPI |
MACRUM | 0:99f7e7890e03 | 27 | pc.printf("--apcs /ropi is used\n"); |
MACRUM | 0:99f7e7890e03 | 28 | #endif |
MACRUM | 0:99f7e7890e03 | 29 | |
MACRUM | 0:99f7e7890e03 | 30 | #ifdef __APCS_RWPI |
MACRUM | 0:99f7e7890e03 | 31 | pc.printf("--apcs /rwpi is used\n"); |
MACRUM | 0:99f7e7890e03 | 32 | #endif |
MACRUM | 0:99f7e7890e03 | 33 | |
MACRUM | 0:99f7e7890e03 | 34 | #ifdef __APCS_FPIC |
MACRUM | 0:99f7e7890e03 | 35 | pc.printf("--apcs /fpic is used\n"); |
MACRUM | 0:99f7e7890e03 | 36 | #endif |
MACRUM | 0:99f7e7890e03 | 37 | |
MACRUM | 0:99f7e7890e03 | 38 | #ifdef __BIG_ENDIAN |
MACRUM | 0:99f7e7890e03 | 39 | pc.printf("Target is big endian\n"); |
MACRUM | 0:99f7e7890e03 | 40 | #endif |
MACRUM | 0:99f7e7890e03 | 41 | |
MACRUM | 0:99f7e7890e03 | 42 | #ifdef __CHAR_UNSIGNED__ |
MACRUM | 0:99f7e7890e03 | 43 | pc.printf("char type is unsigned\n"); |
MACRUM | 0:99f7e7890e03 | 44 | #else |
MACRUM | 0:99f7e7890e03 | 45 | pc.printf("char type is signed\n"); |
MACRUM | 0:99f7e7890e03 | 46 | #endif |
MACRUM | 0:99f7e7890e03 | 47 | pc.printf("EDG front-end version : %d\n", __EDG_VERSION__); |
MACRUM | 0:99f7e7890e03 | 48 | |
MACRUM | 0:99f7e7890e03 | 49 | pc.printf("Emulated GNU version : %d.%d\n", __GNUC__, __GNUC_MINOR__); |
MACRUM | 0:99f7e7890e03 | 50 | pc.printf("Current emulated GNU version : %s\n", __VERSION__); |
MACRUM | 0:99f7e7890e03 | 51 | |
MACRUM | 0:99f7e7890e03 | 52 | pc.printf("Optimize level : %d\n", __OPTIMISE_LEVEL); |
MACRUM | 0:99f7e7890e03 | 53 | |
MACRUM | 0:99f7e7890e03 | 54 | #ifdef __OPTIMISE_SPACE |
MACRUM | 0:99f7e7890e03 | 55 | pc.printf("Optimized by size\n"); |
MACRUM | 0:99f7e7890e03 | 56 | #endif |
MACRUM | 0:99f7e7890e03 | 57 | |
MACRUM | 0:99f7e7890e03 | 58 | #ifdef __OPTIMISE_TIME |
MACRUM | 0:99f7e7890e03 | 59 | pc.printf("Optimized by speed\n"); |
MACRUM | 0:99f7e7890e03 | 60 | #endif |
MACRUM | 0:99f7e7890e03 | 61 | |
MACRUM | 0:99f7e7890e03 | 62 | pc.printf("Target ARM architecture : %d\n", __TARGET_ARCH_ARM); |
MACRUM | 0:99f7e7890e03 | 63 | pc.printf("Target Thumb architecture : %d\n", __TARGET_ARCH_THUMB); |
MACRUM | 0:99f7e7890e03 | 64 | #else |
MACRUM | 0:99f7e7890e03 | 65 | pc.printf("Not build with ARM compiler\n"); |
MACRUM | 0:99f7e7890e03 | 66 | #endif |
MACRUM | 0:99f7e7890e03 | 67 | while(1) |
MACRUM | 0:99f7e7890e03 | 68 | ; |
MACRUM | 0:99f7e7890e03 | 69 | } |
MACRUM | 0:99f7e7890e03 | 70 | |
MACRUM | 0:99f7e7890e03 | 71 |