mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 08:13:54 -06:00
Hexagon (target/hexagon) Move pkt_has_store_s1 to DisasContext
The pkt_has_store_s1 field is only used for bookkeeping helpers with a load. With recent changes that eliminate the need to free TCGv variables, it makes more sense to make this transient. These helpers already take the instruction slot as an argument. We combine the slot and pkt_has_store_s1 into a single argument called slotval. Suggested-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Taylor Simpson <tsimpson@quicinc.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20230427230012.3800327-21-tsimpson@quicinc.com>
This commit is contained in:
parent
842b206f26
commit
e5d0d78db4
11 changed files with 51 additions and 40 deletions
|
@ -398,6 +398,14 @@ static inline void gen_store_conditional8(DisasContext *ctx,
|
|||
tcg_gen_movi_tl(hex_llsc_addr, ~0);
|
||||
}
|
||||
|
||||
#ifndef CONFIG_HEXAGON_IDEF_PARSER
|
||||
static TCGv gen_slotval(DisasContext *ctx)
|
||||
{
|
||||
int slotval = (ctx->pkt->pkt_has_store_s1 & 1) | (ctx->insn->slot << 1);
|
||||
return tcg_constant_tl(slotval);
|
||||
}
|
||||
#endif
|
||||
|
||||
void gen_store32(TCGv vaddr, TCGv src, int width, uint32_t slot)
|
||||
{
|
||||
tcg_gen_mov_tl(hex_store_addr[slot], vaddr);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue