[okl4-developer] Problem with inline assembler on arm926ejs
Lukas HANEL
lukas.hanel at st.com
Thu Apr 17 00:53:58 EST 2008
Hi
When switching to the 2.1 release I get the same compilation problem,
but now in the cache file:
okl4_2.1/arch/arm/pistachio/cpu/arm926ejs/include/cache.h
What can I do to get a correct version?
thanks,
Lukas Hänel
Listing:
~/okl4_2.1$ ./tools/build.py machine=nhk15 project=l4test simulate
scons: Reading SConscript files ...
architecture arm is not yet supported by libcompat.
architecture arm is not yet supported by libcompat.
scons: done reading SConscript files.
scons: Building targets ...
[INST] build/pistachio/include/kernel/cpu/cache.h
[CXX ] build/pistachio/l4kernel/object/src/asid.o
In file included from build/pistachio/include/kernel/arch/cache.h:67,
from build/pistachio/include/kernel/cache.h:139,
from build/pistachio/include/kernel/arch/ver/ptab.h:91,
from build/pistachio/include/kernel/arch/ver/pgent.h:93,
from build/pistachio/include/kernel/arch/pgent.h:70,
from build/pistachio/include/kernel/space.h:98,
from pistachio/src/asid.cc:62:
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_flush_i()':
build/pistachio/include/kernel/cpu/cache.h:149: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:147: warning: unused variable
'zero'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_flush_ent(void*, word_t)':
build/pistachio/include/kernel/cpu/cache.h:187: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:184: warning: unused variable
'size'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_clean_invalidate_dlines(void*, word_t)':
build/pistachio/include/kernel/cpu/cache.h:211: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_clean_dlines(void*, word_t)':
build/pistachio/include/kernel/cpu/cache.h:233: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_invalidate_dlines(void*, word_t)':
build/pistachio/include/kernel/cpu/cache.h:255: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_invalidate_ilines(void*, word_t)':
build/pistachio/include/kernel/cpu/cache.h:277: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::tlb_flush()':
build/pistachio/include/kernel/cpu/cache.h:333: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:331: warning: unused variable
'zero'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::tlb_flush_ent(void*, word_t)':
build/pistachio/include/kernel/cpu/cache.h:349: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_invalidate_d_line(word_t)':
build/pistachio/include/kernel/cpu/cache.h:389: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_invalidate_i()':
build/pistachio/include/kernel/cpu/cache.h:400: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:398: warning: unused variable
'zero'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_invalidate_d()':
build/pistachio/include/kernel/cpu/cache.h:411: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:409: warning: unused variable
'zero'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_clean(word_t)':
build/pistachio/include/kernel/cpu/cache.h:421: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::cache_drain_write_buffer()':
build/pistachio/include/kernel/cpu/cache.h:432: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:430: warning: unused variable
'zero'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::prefetch_icache(void*)':
build/pistachio/include/kernel/cpu/cache.h:442: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::lock_tlb_addr(void*)':
build/pistachio/include/kernel/cpu/cache.h:455: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::unlock_icache()':
build/pistachio/include/kernel/cpu/cache.h:472: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:469: warning: unused variable
'unlock'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::unlock_dcache()':
build/pistachio/include/kernel/cpu/cache.h:484: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:481: warning: unused variable
'unlock'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::lock_icache_range(void*, word_t, word_t)':
build/pistachio/include/kernel/cpu/cache.h:501: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:495: warning: unused variable
'save'
build/pistachio/include/kernel/cpu/cache.h:497: warning: unused variable
'lock'
build/pistachio/include/kernel/cpu/cache.h:498: warning: unused variable
'vend'
build/pistachio/include/kernel/cpu/cache.h: In static member function
`static void arm_cache::lock_dcache_range(void*, word_t, word_t)':
build/pistachio/include/kernel/cpu/cache.h:533: error: expected `)'
before "_"
build/pistachio/include/kernel/cpu/cache.h:527: warning: unused variable
'save'
build/pistachio/include/kernel/cpu/cache.h:529: warning: unused variable
'lock'
build/pistachio/include/kernel/cpu/cache.h:530: warning: unused variable
'vend'
scons: *** [build/pistachio/l4kernel/object/src/asid.o] Error 1
scons: building terminated because of errors.
Source code example(line 145-154):
static inline void cache_flush_i(void)
{
word_t zero = 0;
__asm__ __volatile__ (
" mcr p15, 0, "_(zero)", c7, c5, 0 ;" /* Flush
I cache */
#if defined(__GNUC__)
:: [zero] "r" (zero)
#endif
);
}
More information about the Developer
mailing list