diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2012-09-16 21:44:57 -0400 |
---|---|---|
committer | Chris Zankel <chris@zankel.net> | 2012-10-03 18:12:56 -0400 |
commit | 6907b4564b77cd8a468716ea39dc152e48f03538 (patch) | |
tree | 87841532c30f8888a3f3399c11dba7a00a90f099 /arch/xtensa | |
parent | d3738f407c8ced4fd17dccf6cce729023c735c73 (diff) |
xtensa: provide dummy gcc intrinsics
__xtensa_libgcc_window_spill is needed for __builtin_return_address(1),
but its libgcc implementation cannot be used as it makes a syscall.
Atomic intrinsics are used by single staging driver.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
Diffstat (limited to 'arch/xtensa')
-rw-r--r-- | arch/xtensa/kernel/xtensa_ksyms.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/xtensa/kernel/xtensa_ksyms.c b/arch/xtensa/kernel/xtensa_ksyms.c index 88fe2f2f376d..a8b9f1fd1e17 100644 --- a/arch/xtensa/kernel/xtensa_ksyms.c +++ b/arch/xtensa/kernel/xtensa_ksyms.c | |||
@@ -74,8 +74,25 @@ EXPORT_SYMBOL(__umodsi3); | |||
74 | EXPORT_SYMBOL(__udivdi3); | 74 | EXPORT_SYMBOL(__udivdi3); |
75 | EXPORT_SYMBOL(__umoddi3); | 75 | EXPORT_SYMBOL(__umoddi3); |
76 | EXPORT_SYMBOL(__ucmpdi2); | 76 | EXPORT_SYMBOL(__ucmpdi2); |
77 | |||
78 | void __xtensa_libgcc_window_spill(void) | ||
79 | { | ||
80 | BUG(); | ||
81 | } | ||
77 | EXPORT_SYMBOL(__xtensa_libgcc_window_spill); | 82 | EXPORT_SYMBOL(__xtensa_libgcc_window_spill); |
78 | 83 | ||
84 | unsigned long __sync_fetch_and_and_4(unsigned long *p, unsigned long v) | ||
85 | { | ||
86 | BUG(); | ||
87 | } | ||
88 | EXPORT_SYMBOL(__sync_fetch_and_and_4); | ||
89 | |||
90 | unsigned long __sync_fetch_and_or_4(unsigned long *p, unsigned long v) | ||
91 | { | ||
92 | BUG(); | ||
93 | } | ||
94 | EXPORT_SYMBOL(__sync_fetch_and_or_4); | ||
95 | |||
79 | #ifdef CONFIG_NET | 96 | #ifdef CONFIG_NET |
80 | /* | 97 | /* |
81 | * Networking support | 98 | * Networking support |