mirror of
https://github.com/qemu/qemu.git
synced 2024-11-24 19:33:39 +08:00
target/m68k: Use tcg_gen_deposit_i32 in gen_partset_reg
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
e79f81421b
commit
64919f710f
@ -697,19 +697,12 @@ static inline int ext_opsize(int ext, int pos)
|
||||
*/
|
||||
static void gen_partset_reg(int opsize, TCGv reg, TCGv val)
|
||||
{
|
||||
TCGv tmp;
|
||||
switch (opsize) {
|
||||
case OS_BYTE:
|
||||
tcg_gen_andi_i32(reg, reg, 0xffffff00);
|
||||
tmp = tcg_temp_new();
|
||||
tcg_gen_ext8u_i32(tmp, val);
|
||||
tcg_gen_or_i32(reg, reg, tmp);
|
||||
tcg_gen_deposit_i32(reg, reg, val, 0, 8);
|
||||
break;
|
||||
case OS_WORD:
|
||||
tcg_gen_andi_i32(reg, reg, 0xffff0000);
|
||||
tmp = tcg_temp_new();
|
||||
tcg_gen_ext16u_i32(tmp, val);
|
||||
tcg_gen_or_i32(reg, reg, tmp);
|
||||
tcg_gen_deposit_i32(reg, reg, val, 0, 16);
|
||||
break;
|
||||
case OS_LONG:
|
||||
case OS_SINGLE:
|
||||
|
Loading…
Reference in New Issue
Block a user