aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAurelien Jarno <aurelien@aurel32.net>2010-12-21 19:32:49 +0100
committerAurelien Jarno <aurelien@aurel32.net>2010-12-21 19:32:49 +0100
commit4a1e19ae05a3f03fdd0896e8f26efe94b2ff60a2 (patch)
tree188dac981db6d7f370c463833f8a1048797512ae /exec-all.h
parentqdev: sysbus_get_default must not return a NULL pointer (fix regression) (diff)
downloadqemu-kvm-4a1e19ae05a3f03fdd0896e8f26efe94b2ff60a2.tar.gz
qemu-kvm-4a1e19ae05a3f03fdd0896e8f26efe94b2ff60a2.tar.bz2
qemu-kvm-4a1e19ae05a3f03fdd0896e8f26efe94b2ff60a2.zip
tcg-arm: fix __clear_cache() warning
Use __builtin___clear_cache() instead of __clear_cache() to avoid having to define the function as extern. Fix the following warning: | In file included from qemu/cpus.c:34: | qemu/exec-all.h: In function 'tb_set_jmp_target1': | qemu/exec-all.h:208: error: nested extern declaration of '__clear_cache' | make[1]: *** [cpus.o] Error 1 | make: *** [subdir-i386-softmmu] Error 2 Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Diffstat (limited to 'exec-all.h')
-rw-r--r--exec-all.h6
1 files changed, 2 insertions, 4 deletions
diff --git a/exec-all.h b/exec-all.h
index c4570587d..6821b1794 100644
--- a/exec-all.h
+++ b/exec-all.h
@@ -204,9 +204,7 @@ static inline void tb_set_jmp_target1(unsigned long jmp_addr, unsigned long addr
#elif defined(__arm__)
static inline void tb_set_jmp_target1(unsigned long jmp_addr, unsigned long addr)
{
-#if QEMU_GNUC_PREREQ(4, 1)
- void __clear_cache(char *beg, char *end);
-#else
+#if !QEMU_GNUC_PREREQ(4, 1)
register unsigned long _beg __asm ("a1");
register unsigned long _end __asm ("a2");
register unsigned long _flg __asm ("a3");
@@ -218,7 +216,7 @@ static inline void tb_set_jmp_target1(unsigned long jmp_addr, unsigned long addr
| (((addr - (jmp_addr + 8)) >> 2) & 0xffffff);
#if QEMU_GNUC_PREREQ(4, 1)
- __clear_cache((char *) jmp_addr, (char *) jmp_addr + 4);
+ __builtin___clear_cache((char *) jmp_addr, (char *) jmp_addr + 4);
#else
/* flush icache */
_beg = jmp_addr;