mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
target/sparc: Implement check_align inline
Emit the exception at the end of the translation block, so that the non-exception case can fall through. Tested-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Acked-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
930f1865cc
commit
186e78905a
3 changed files with 61 additions and 15 deletions
|
@ -360,6 +360,7 @@ static inline void do_check_asi(CPUSPARCState *env, int asi, uintptr_t ra)
|
|||
#endif /* !CONFIG_USER_ONLY */
|
||||
#endif
|
||||
|
||||
#if defined(TARGET_SPARC64) || !defined(CONFIG_USER_ONLY)
|
||||
static void do_check_align(CPUSPARCState *env, target_ulong addr,
|
||||
uint32_t align, uintptr_t ra)
|
||||
{
|
||||
|
@ -367,11 +368,7 @@ static void do_check_align(CPUSPARCState *env, target_ulong addr,
|
|||
cpu_raise_exception_ra(env, TT_UNALIGNED, ra);
|
||||
}
|
||||
}
|
||||
|
||||
void helper_check_align(CPUSPARCState *env, target_ulong addr, uint32_t align)
|
||||
{
|
||||
do_check_align(env, addr, align, GETPC());
|
||||
}
|
||||
#endif
|
||||
|
||||
#if !defined(TARGET_SPARC64) && !defined(CONFIG_USER_ONLY) && \
|
||||
defined(DEBUG_MXCC)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue