Rev 4065 | Rev 5056 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4065 | Rev 4103 | ||
---|---|---|---|
Line 63... | Line 63... | ||
63 | * Tell the optimizer that something else uses this function or variable. |
63 | * Tell the optimizer that something else uses this function or variable. |
64 | */ |
64 | */ |
65 | #define __visible __attribute__((externally_visible)) |
65 | #define __visible __attribute__((externally_visible)) |
66 | #endif |
66 | #endif |
Line -... | Line 67... | ||
- | 67 | ||
- | 68 | /* |
|
- | 69 | * GCC 'asm goto' miscompiles certain code sequences: |
|
- | 70 | * |
|
- | 71 | * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670 |
|
- | 72 | * |
|
- | 73 | * Work it around via a compiler barrier quirk suggested by Jakub Jelinek. |
|
- | 74 | * Fixed in GCC 4.8.2 and later versions. |
|
- | 75 | * |
|
- | 76 | * (asm goto is automatically volatile - the naming reflects this.) |
|
- | 77 | */ |
|
- | 78 | #if GCC_VERSION <= 40801 |
|
- | 79 | # define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) |
|
- | 80 | #else |
|
- | 81 | # define asm_volatile_goto(x...) do { asm goto(x); } while (0) |
|
Line 67... | Line 82... | ||
67 | 82 | #endif |
|
68 | 83 | ||
69 | #ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP |
84 | #ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP |
70 | #if GCC_VERSION >= 40400 |
85 | #if GCC_VERSION >= 40400 |