diff options
author | Andreas Färber <afaerber@suse.de> | 2013-05-10 16:34:06 +0200 |
---|---|---|
committer | Andreas Färber <afaerber@suse.de> | 2013-07-09 21:20:28 +0200 |
commit | 6e42be7cd10260fd3a006d94f6c870692bf7a2c0 (patch) | |
tree | 75a590145a887c9d8424fd100d23e985ce2338ae /target-sh4 | |
parent | 6291ad77d7c57dfc52a6a938d1a77ec3ec3ad16c (diff) | |
download | hqemu-6e42be7cd10260fd3a006d94f6c870692bf7a2c0.zip hqemu-6e42be7cd10260fd3a006d94f6c870692bf7a2c0.tar.gz |
cpu: Drop unnecessary dynamic casts in *_env_get_cpu()
A transition from CPUFooState to FooCPU can be considered safe,
just like FooCPU::env access in the opposite direction.
The only benefit of the FOO_CPU() casts would be protection against
bogus CPUFooState pointers, but then surrounding code would likely
break, too.
This should slightly improve interrupt etc. performance when going from
CPUFooState to FooCPU.
For any additional CPU() casts see 3556c233d931ad5ffa46a35cb25cfc057732ebb8
(qom: allow turning cast debugging off).
Reported-by: Anthony Liguori <aliguori@us.ibm.com>
Acked-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'target-sh4')
-rw-r--r-- | target-sh4/cpu-qom.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/target-sh4/cpu-qom.h b/target-sh4/cpu-qom.h index 01d1637..c229a9a 100644 --- a/target-sh4/cpu-qom.h +++ b/target-sh4/cpu-qom.h @@ -76,7 +76,7 @@ typedef struct SuperHCPU { static inline SuperHCPU *sh_env_get_cpu(CPUSH4State *env) { - return SUPERH_CPU(container_of(env, SuperHCPU, env)); + return container_of(env, SuperHCPU, env); } #define ENV_GET_CPU(e) CPU(sh_env_get_cpu(e)) |