[PATCH v4 02/11] Hexagon (target/hexagon) Fix predicated assignment to .tmp and .cur

2022-11-07 Thread Taylor Simpson
Henderson Co-authored-by: Matheus Tavares Bernardino Signed-off-by: Matheus Tavares Bernardino Signed-off-by: Taylor Simpson --- target/hexagon/translate.h | 6 +++ tests/tcg/hexagon/hvx_misc.c| 72 + target/hexagon/gen_tcg_funcs.py | 12 ++ 3 files

[PATCH v4 04/11] Hexagon (target/hexagon) Only use branch_taken when packet has multi cof

2022-11-07 Thread Taylor Simpson
er to the Packet structure, and pass this information to the needed functions. When there is a generated helper function with cof, the generator will pass this pkt_has_multi_cof as a runtime value. Acked-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/insn.h

[PATCH v4 06/11] Hexagon (target/hexagon) Remove next_PC from runtime state

2022-11-07 Thread Taylor Simpson
The imported files don't properly mark all CONDEXEC instructions, so we add some logic to hex_common.py to add the attribute. Acked-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/cpu.h| 1 - target/hexagon/gen_tcg.h| 6 ++ t

RE: [PATCH v4 10/11] Hexagon (target/hexagon) Use direct block chaining for direct jump/branch

2022-11-08 Thread Taylor Simpson
> -Original Message- > From: Richard Henderson > Sent: Tuesday, November 8, 2022 1:24 AM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: phi...@linaro.org; a...@rev.ng; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: Re: [PATCH v4 10/11]

RE: [PATCH v4 03/11] Hexagon (target/hexagon) Add overrides for S2_asr_r_r_sat/S2_asl_r_r_sat

2022-11-08 Thread Taylor Simpson
> -Original Message- > From: Richard Henderson > Sent: Tuesday, November 8, 2022 1:20 AM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: phi...@linaro.org; a...@rev.ng; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: Re: [PATCH v4 03/11]

[PATCH v5 03/11] Hexagon (target/hexagon) Add overrides for S2_asr_r_r_sat/S2_asl_r_r_sat

2022-11-08 Thread Taylor Simpson
These instructions will not be generated by idef-parser, so we override them manually. Test cases added to tests/tcg/hexagon/usr.c Co-authored-by: Matheus Tavares Bernardino Signed-off-by: Matheus Tavares Bernardino Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 10

[PATCH v5 02/11] Hexagon (target/hexagon) Fix predicated assignment to .tmp and .cur

2022-11-08 Thread Taylor Simpson
Henderson Co-authored-by: Matheus Tavares Bernardino Signed-off-by: Matheus Tavares Bernardino Signed-off-by: Taylor Simpson --- target/hexagon/translate.h | 6 +++ tests/tcg/hexagon/hvx_misc.c| 72 + target/hexagon/gen_tcg_funcs.py | 12 ++ 3 files

[PATCH v5 10/11] Hexagon (target/hexagon) Use direct block chaining for direct jump/branch

2022-11-08 Thread Taylor Simpson
branch_cond == TCG_COND_NEVER, there isn't a single direct branch in this packet. When branch_cond != TCG_COND_ALWAYS, the value is in hex_branch_taken branch_dest The destination of the branch Reviewed-by: Richard Henderson Signed-off-by: Taylor Si

[PATCH v5 09/11] Hexagon (target/hexagon) Add overrides for various forms of jump

2022-11-08 Thread Taylor Simpson
Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 203 +++ target/hexagon/genptr.c | 43 + 2 files changed, 246 insertions(+) diff --git a/target/hexagon/gen_tcg.h b/target/hexagon/gen_tcg.h index

[PATCH v5 01/11] Hexagon (target/hexagon) Add pkt and insn to DisasContext

2022-11-08 Thread Taylor Simpson
This enables us to reduce the number of parameters to many functions In particular, the generated functions previously took all 3 as arguments Not only does this simplify the code, it improves the translation time Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon

[PATCH v5 05/11] Hexagon (target/hexagon) Remove PC from the runtime state

2022-11-08 Thread Taylor Simpson
Add pc field to Packet structure For helpers that need PC, pass an extra argument Remove slot arg from conditional jump helpers On a trap0, copy pkt->pc into hex_gpr[HEX_REG_PC] Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h

[PATCH v5 11/11] Hexagon (target/hexagon) Use direct block chaining for tight loops

2022-11-08 Thread Taylor Simpson
PC. Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/cpu.h | 13 +++--- target/hexagon/gen_tcg.h | 3 ++ target/hexagon/translate.h | 1 + target/hexagon/genptr.c| 84 ++ target/hexagon/translate.c | 34

[PATCH v5 07/11] Hexagon (target/hexagon) Add overrides for direct call instructions

2022-11-08 Thread Taylor Simpson
Add overrides for J2_call J2_callt J2_callf Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 8 ++ target/hexagon/genptr.c | 55 2 files changed, 63 insertions(+) diff --git a/target/hexagon

[PATCH v5 06/11] Hexagon (target/hexagon) Remove next_PC from runtime state

2022-11-08 Thread Taylor Simpson
The imported files don't properly mark all CONDEXEC instructions, so we add some logic to hex_common.py to add the attribute. Acked-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/cpu.h| 1 - target/hexagon/gen_tcg.h| 6 ++ t

[PATCH v5 00/11] Hexagon (target/hexagon) performance and bug fixes

2022-11-08 Thread Taylor Simpson
overrides Simplify gen_write_new_pc_addr Taylor Simpson (11): Hexagon (target/hexagon) Add pkt and insn to DisasContext Hexagon (target/hexagon) Fix predicated assignment to .tmp and .cur Hexagon (target/hexagon) Add overrides for S2_asr_r_r_sat/S2_asl_r_r_sat Hexagon (target/hex

[PATCH v5 04/11] Hexagon (target/hexagon) Only use branch_taken when packet has multi cof

2022-11-08 Thread Taylor Simpson
er to the Packet structure, and pass this information to the needed functions. When there is a generated helper function with cof, the generator will pass this pkt_has_multi_cof as a runtime value. Acked-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/insn.h

[PATCH v5 08/11] Hexagon (target/hexagon) Add overrides for compound compare and jump

2022-11-08 Thread Taylor Simpson
Acked-by: Richard Henderson Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 177 +++ target/hexagon/genptr.c | 90 2 files changed, 267 insertions(+) diff --git a/target/hexagon/gen_tcg.h b/target/hexagon/gen_tcg.h index

RE: [PATCH v4 10/11] Hexagon (target/hexagon) Use direct block chaining for direct jump/branch

2022-11-09 Thread Taylor Simpson
> -Original Message- > From: Richard Henderson > Sent: Tuesday, November 8, 2022 7:41 PM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: phi...@linaro.org; a...@rev.ng; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: Re: [PATCH v4 10/11]

[PULL 09/11] Hexagon (target/hexagon) Add overrides for various forms of jump

2022-11-10 Thread Taylor Simpson
Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-10-tsimp...@quicinc.com> --- target/hexagon/gen_tcg.h | 201 +++ target/hexagon/genptr.c | 43 + 2 files changed, 244 insertions(+) diff --git a/

[PULL 07/11] Hexagon (target/hexagon) Add overrides for direct call instructions

2022-11-10 Thread Taylor Simpson
Add overrides for J2_call J2_callt J2_callf Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-8-tsimp...@quicinc.com> --- target/hexagon/gen_tcg.h | 8 ++ target/hexagon/genptr.c | 55 +

[PULL 10/11] Hexagon (target/hexagon) Use direct block chaining for direct jump/branch

2022-11-10 Thread Taylor Simpson
branch_cond == TCG_COND_NEVER, there isn't a single direct branch in this packet. When branch_cond != TCG_COND_ALWAYS, the value is in hex_branch_taken branch_dest The destination of the branch Reviewed-by: Richard Henderson Signed-off-by: Taylor Si

[PULL 04/11] Hexagon (target/hexagon) Only use branch_taken when packet has multi cof

2022-11-10 Thread Taylor Simpson
er to the Packet structure, and pass this information to the needed functions. When there is a generated helper function with cof, the generator will pass this pkt_has_multi_cof as a runtime value. Acked-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166

[PULL 03/11] Hexagon (target/hexagon) Add overrides for S2_asr_r_r_sat/S2_asl_r_r_sat

2022-11-10 Thread Taylor Simpson
These instructions will not be generated by idef-parser, so we override them manually. Test cases added to tests/tcg/hexagon/usr.c Co-authored-by: Matheus Tavares Bernardino Signed-off-by: Matheus Tavares Bernardino Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Message-Id

[PULL 01/11] Hexagon (target/hexagon) Add pkt and insn to DisasContext

2022-11-10 Thread Taylor Simpson
This enables us to reduce the number of parameters to many functions In particular, the generated functions previously took all 3 as arguments Not only does this simplify the code, it improves the translation time Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id

[PULL 02/11] Hexagon (target/hexagon) Fix predicated assignment to .tmp and .cur

2022-11-10 Thread Taylor Simpson
Henderson Co-authored-by: Matheus Tavares Bernardino Signed-off-by: Matheus Tavares Bernardino Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-3-tsimp...@quicinc.com> --- target/hexagon/translate.h | 6 +++ tests/tcg/hexagon/hvx_misc.c

[PULL 05/11] Hexagon (target/hexagon) Remove PC from the runtime state

2022-11-10 Thread Taylor Simpson
Add pc field to Packet structure For helpers that need PC, pass an extra argument Remove slot arg from conditional jump helpers On a trap0, copy pkt->pc into hex_gpr[HEX_REG_PC] Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-6-tsimp...@quici

[PULL 08/11] Hexagon (target/hexagon) Add overrides for compound compare and jump

2022-11-10 Thread Taylor Simpson
Acked-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-9-tsimp...@quicinc.com> --- target/hexagon/gen_tcg.h | 177 +++ target/hexagon/genptr.c | 90 2 files changed, 267 insertions(+) diff -

[PULL 00/11] Hexagon bug fixes and performance improvement

2022-11-10 Thread Taylor Simpson
rt address. -------- Taylor Simpson (11): Hexagon (target/hexagon) Add pkt and insn to DisasContext Hexagon (target/hexagon) Fix predicated assignment to .tmp and .cur Hexagon (target/hexagon) Add overrides for S2_asr_r_r_sat/S2_asl_r_r_sat

[PULL 06/11] Hexagon (target/hexagon) Remove next_PC from runtime state

2022-11-10 Thread Taylor Simpson
The imported files don't properly mark all CONDEXEC instructions, so we add some logic to hex_common.py to add the attribute. Acked-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-7-tsimp...@quicinc.com> --- target/hexagon/cpu.h

[PULL 11/11] Hexagon (target/hexagon) Use direct block chaining for tight loops

2022-11-10 Thread Taylor Simpson
PC. Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-12-tsimp...@quicinc.com> --- target/hexagon/cpu.h | 13 +++--- target/hexagon/gen_tcg.h | 3 ++ target/hexagon/translate.h | 1 + target/hexagon/genptr.c

RE: [PATCH 3/3] Hexagon (target/hexagon) Change decision to set pkt_has_store_s[01]

2022-09-28 Thread Taylor Simpson
> -Original Message- > From: Richard Henderson > Sent: Wednesday, September 28, 2022 11:12 AM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: f4...@amsat.org; a...@rev.ng; a...@rev.ng; Brian Cain > ; Michael Lambert > Subject: Re: [PATCH 3/3] Hexagon (target/hex

[PULL 0/3] Hexagon (target/hexagon) improve store handling

2022-09-28 Thread Taylor Simpson
ore robust -------- Taylor Simpson (3): Hexagon (target/hexagon) add instruction attributes from archlib Hexagon (target/hexagon) move store size tracking to translation Hexagon (target/hexagon) Change decision to set pkt_has_store_s[01] target/hexago

[PULL 2/3] Hexagon (target/hexagon) move store size tracking to translation

2022-09-28 Thread Taylor Simpson
dth - Remove setting of ctx->store_width from genptr.c Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Message-Id: <20220920080746.26791-3-tsimp...@quicinc.com> --- target/hexagon/macros.h| 8 target/hexagon/genptr.c| 36 ---

[PULL 3/3] Hexagon (target/hexagon) Change decision to set pkt_has_store_s[01]

2022-09-28 Thread Taylor Simpson
logic in decode.c that sets pkt_has_store_s[01] Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Message-Id: <20220920080746.26791-4-tsimp...@quicinc.com> --- target/hexagon/attribs_def.h.inc | 1 + target/hexagon/decode.c | 13 - target/hexagon/trans

[PULL 1/3] Hexagon (target/hexagon) add instruction attributes from archlib

2022-09-28 Thread Taylor Simpson
The imported files from the architecture library have added some instruction attributes. Some of these will be used in a subsequent patch for determing the size of a store. Signed-off-by: Taylor Simpson Acked-by: Richard Henderson Message-Id: <20220920080746.26791-2-tsimp...@quicinc.

[PATCH] Hexagon (target/hexagon) Fix predicated assignment to .tmp

2022-09-28 Thread Taylor Simpson
packet should be used. To fix this bug, we preload the temporary with the value from the HVX register. Test case added to tests/tcg/hexagon/hvx_misc.c Signed-off-by: Taylor Simpson --- target/hexagon/translate.h | 5 + tests/tcg/hexagon/hvx_misc.c| 39

[PULL v2 0/3] Hexagon (target/hexagon) improve store handling

2022-09-30 Thread Taylor Simpson
ore robust -------- Taylor Simpson (3): Hexagon (target/hexagon) add instruction attributes from archlib Hexagon (target/hexagon) Change decision to set pkt_has_store_s[01] Hexagon (target/hexagon) move store size tracking to translation target/hexago

[PULL v2 3/3] Hexagon (target/hexagon) move store size tracking to translation

2022-09-30 Thread Taylor Simpson
dth - Remove setting of ctx->store_width from genptr.c Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Message-Id: <20220920080746.26791-3-tsimp...@quicinc.com> --- target/hexagon/macros.h| 8 target/hexagon/genptr.c| 36 ---

[PULL v2 2/3] Hexagon (target/hexagon) Change decision to set pkt_has_store_s[01]

2022-09-30 Thread Taylor Simpson
logic in decode.c that sets pkt_has_store_s[01] Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Message-Id: <20220920080746.26791-4-tsimp...@quicinc.com> --- target/hexagon/attribs_def.h.inc | 1 + target/hexagon/decode.c | 13 - target/hexagon/trans

[PULL v2 1/3] Hexagon (target/hexagon) add instruction attributes from archlib

2022-09-30 Thread Taylor Simpson
The imported files from the architecture library have added some instruction attributes. Some of these will be used in a subsequent patch for determing the size of a store. Signed-off-by: Taylor Simpson Acked-by: Richard Henderson Message-Id: <20220920080746.26791-2-tsimp...@quicinc.

RE: [PATCH] Hexagon (gen_tcg_funcs.py): avoid duplicated tcg code on A_CVI_NEW

2022-09-30 Thread Taylor Simpson
> -Original Message- > From: Matheus Tavares Bernardino > Sent: Friday, September 30, 2022 3:08 PM > To: qemu-devel@nongnu.org > Cc: Taylor Simpson > Subject: [PATCH] Hexagon (gen_tcg_funcs.py): avoid duplicated tcg code on > A_CVI_NEW > > Hexagon inst

RE: [PATCH v6 16/18] hw/core: Add CPUClass.get_pc

2022-09-30 Thread Taylor Simpson
chael > Rolnik ; Edgar E. Iglesias ; > Taylor Simpson ; Song Gao > ; Xiaojuan Yang ; > Laurent Vivier ; Jiaxun Yang ; > Aleksandar Rikalo ; Chris Wulff > ; Marek Vasut ; Stafford Horne > ; Yoshinori Sato ; Mark > Cave-Ayland ; Bastian Koppelmann > ; Max Filippov ; > qemu-...@

[PULL v3 1/4] Hexagon (target/hexagon) add instruction attributes from archlib

2022-10-03 Thread Taylor Simpson
The imported files from the architecture library have added some instruction attributes. Some of these will be used in a subsequent patch for determing the size of a store. Signed-off-by: Taylor Simpson Acked-by: Richard Henderson Message-Id: <20220920080746.26791-2-tsimp...@quicinc.

[PULL v3 4/4] Hexagon (gen_tcg_funcs.py): avoid duplicated tcg code on A_CVI_NEW

2022-10-03 Thread Taylor Simpson
s Bernardino Signed-off-by: Taylor Simpson Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Richard Henderson Reviewed-by: Taylor Simpson Message-Id: --- target/hexagon/gen_tcg_funcs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/hexagon/gen_tcg_funcs.py b/ta

[PULL v3 3/4] Hexagon (target/hexagon) move store size tracking to translation

2022-10-03 Thread Taylor Simpson
dth - Remove setting of ctx->store_width from genptr.c Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Message-Id: <20220920080746.26791-3-tsimp...@quicinc.com> --- target/hexagon/macros.h| 8 target/hexagon/genptr.c| 36 ---

[PULL v3 2/4] Hexagon (target/hexagon) Change decision to set pkt_has_store_s[01]

2022-10-03 Thread Taylor Simpson
logic in decode.c that sets pkt_has_store_s[01] Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Message-Id: <20220920080746.26791-4-tsimp...@quicinc.com> --- target/hexagon/attribs_def.h.inc | 1 + target/hexagon/decode.c | 13 - target/hexagon/trans

[PULL v3 0/4] Hexagon (target/hexagon) improve store handling and gen_tcg_funcs.py

2022-10-03 Thread Taylor Simpson
duplicated tcg code on A_CVI_NEW Taylor Simpson (3): Hexagon (target/hexagon) add instruction attributes from archlib Hexagon (target/hexagon) Change decision to set pkt_has_store_s[01] Hexagon (target/hexagon) move store size tracking to translation target/hexago

RE: [PATCH 6/8] Hexagon (target/hexagon) Add overrides for various forms of jump

2022-10-20 Thread Taylor Simpson
> -Original Message- > From: Matheus Tavares Bernardino > Sent: Thursday, October 20, 2022 10:24 AM > To: Taylor Simpson > Cc: a...@rev.ng; a...@rev.ng; Brian Cain ; > phi...@linaro.org; qemu-devel@nongnu.org; Matheus Bernardino (QUIC) > ; richard.hender...@lin

RE: [PATCH 7/8] Hexagon (target/hexagon) Use direct block chaining for direct jump/branch

2022-10-20 Thread Taylor Simpson
> -Original Message- > From: Matheus Tavares Bernardino > Sent: Thursday, October 20, 2022 10:25 AM > To: Taylor Simpson > Cc: a...@rev.ng; a...@rev.ng; Brian Cain ; > phi...@linaro.org; qemu-devel@nongnu.org; Matheus Bernardino (QUIC) > ; richard.hender...@lin

[PATCH v2 4/8] Hexagon (target/hexagon) Add overrides for direct call instructions

2022-10-24 Thread Taylor Simpson
Add overrides for J2_call J2_callt J2_callf Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 8 ++ target/hexagon/genptr.c | 58 2 files changed, 66 insertions(+) diff --git a/target/hexagon/gen_tcg.h b/target/hexagon

[PATCH v2 7/8] Hexagon (target/hexagon) Use direct block chaining for direct jump/branch

2022-10-24 Thread Taylor Simpson
branch is taken branch_dest The destination of the branch Signed-off-by: Taylor Simpson --- target/hexagon/translate.h | 3 +++ target/hexagon/genptr.c| 13 - target/hexagon/translate.c | 39 +- 3 files changed, 53 insertions(+), 2

[PATCH v2 0/8] Hexagon (target/hexagon) Improve change-of-flow

2022-10-24 Thread Taylor Simpson
the TB start address. Changes in V2 Simplify test in need_pkt_has_multi_cof Address feedback from Matheus Tavares Bernardino Rearrange new-value-jump overrides Simplify gen_write_new_pc_addr Taylor Simpson (8): Hexagon (target/hexagon) Only use branch_taken when packet has

[PATCH v2 6/8] Hexagon (target/hexagon) Add overrides for various forms of jump

2022-10-24 Thread Taylor Simpson
Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 189 +++ target/hexagon/genptr.c | 46 ++ 2 files changed, 235 insertions(+) diff --git a/target/hexagon/gen_tcg.h b/target/hexagon/gen_tcg.h index b56b216110..216862352c 100644 --- a

[PATCH v2 8/8] Hexagon (target/hexagon) Use direct block chaining for tight loops

2022-10-24 Thread Taylor Simpson
PC. Signed-off-by: Taylor Simpson --- target/hexagon/cpu.h | 17 ++--- target/hexagon/gen_tcg.h | 3 ++ target/hexagon/translate.h | 1 + target/hexagon/genptr.c| 71 ++ target/hexagon/translate.c | 41 +++--- 5 files changed

[PATCH v2 2/8] Hexagon (target/hexagon) Remove PC from the runtime state

2022-10-24 Thread Taylor Simpson
Add pc field to Packet structure For helpers that need PC, pass an extra argument Remove slot arg from conditional jump helpers On a trap0, copy pkt->pc into hex_gpr[HEX_REG_PC] Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h| 7 +++ target/hexagon/ins

[PATCH v2 5/8] Hexagon (target/hexagon) Add overrides for compound compare and jump

2022-10-24 Thread Taylor Simpson
Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 177 +++ target/hexagon/genptr.c | 74 2 files changed, 251 insertions(+) diff --git a/target/hexagon/gen_tcg.h b/target/hexagon/gen_tcg.h index ad149adbe1..b56b216110 100644

[PATCH v2 1/8] Hexagon (target/hexagon) Only use branch_taken when packet has multi cof

2022-10-24 Thread Taylor Simpson
er to the Packet structure, and pass this information to the needed functions. When there is a generated helper function with cof, the generator will pass this pkt_has_multi_cof as a runtime value. Signed-off-by: Taylor Simpson --- target/hexagon/insn.h | 1 + target/hexagon/mac

[PATCH v2 3/8] Hexagon (target/hexagon) Remove next_PC from runtime state

2022-10-24 Thread Taylor Simpson
The imported files don't properly mark all CONDEXEC instructions, so we add some logic to hex_common.py to add the attribute. Signed-off-by: Taylor Simpson --- target/hexagon/cpu.h| 1 - target/hexagon/gen_tcg.h| 6 ++ target/hexagon/macros.h

[PATCH] Hexagon (target/hexagon) fix store w/mem_noshuf & predicated load

2022-06-06 Thread Taylor Simpson
/hexagon/mem_noshuf.c Co-authored-by: Taylor Simpson Signed-off-by: Brian Cain Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 2 + tests/tcg/hexagon/mem_noshuf.c | 122 +++-- 2 files changed, 119 insertions(+), 5 deletions(-) diff --git a

[PATCH] Hexagon (target/hexagon) make VyV operands use a unique temp

2022-06-06 Thread Taylor Simpson
/hexagon/hvx_misc.c Signed-off-by: Taylor Simpson --- tests/tcg/hexagon/hvx_misc.c| 45 + target/hexagon/gen_tcg_funcs.py | 9 +++ 2 files changed, 49 insertions(+), 5 deletions(-) diff --git a/tests/tcg/hexagon/hvx_misc.c b/tests/tcg/hexagon/hvx_misc.c index

[PATCH] Hexagon (tests/tcg/hexagon) reference file for float_convd

2022-06-06 Thread Taylor Simpson
The test is in tests/tcg/multiarch/float_convd.c Signed-off-by: Taylor Simpson --- tests/tcg/hexagon/float_convd.ref | 988 ++ 1 file changed, 988 insertions(+) create mode 100644 tests/tcg/hexagon/float_convd.ref diff --git a/tests/tcg/hexagon/float_convd.ref b

[PATCH] Hexagon (target/hexagon) remove unused encodings

2022-06-06 Thread Taylor Simpson
Remove encodings guarded by ifdef that is not defined Signed-off-by: Taylor Simpson --- target/hexagon/imported/encode_pp.def | 23 --- 1 file changed, 23 deletions(-) diff --git a/target/hexagon/imported/encode_pp.def b/target/hexagon/imported/encode_pp.def index

[PATCH] Hexagon (target/hexagon) add overrides for S2_asr_r_r_sat/S2_asl_r_r_sat

2022-06-06 Thread Taylor Simpson
These instructions will not be generated by idef-parser, so we override them manually. Test cases added to tests/tcg/hexagon/usr.c Signed-off-by: Taylor Simpson --- target/hexagon/gen_tcg.h | 10 ++- target/hexagon/genptr.c | 147 +++ tests/tcg/hexagon

[PATCH] Hexagon (tests/tcg/hexagon) Fix alignment in load_unpack.c

2022-06-06 Thread Taylor Simpson
The increment used in :brev tests was causing unaligned addresses Change the increment and the relevant expected values Signed-off-by: Taylor Simpson --- tests/tcg/hexagon/load_unpack.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/tests/tcg/hexagon

[PATCH] Hexagon (target/hexagon) move store size tracking to translation

2022-06-06 Thread Taylor Simpson
he fSTORE instances to fSTORE - Assign the new attributes to the new macros - Add definitions for the new macros - Use the attributes from the instructions during translation to set ctx->store_width - Remove setting of ctx->store_width from genptr.c Signed-off-by: Taylor Simpson --- target/h

RE: [PATCH] Hexagon (meson.build): define min bison version

2023-02-07 Thread Taylor Simpson
> -Original Message- > From: Thomas Huth > Sent: Tuesday, February 7, 2023 9:08 AM > To: Philippe Mathieu-Daudé ; Matheus Bernardino > (QUIC) ; qemu-devel@nongnu.org > Cc: a...@rev.ng; Taylor Simpson ; Brian Cain > ; Antonio Caggiano (QUIC) > ; Daniel P. Be

RE: [PATCH v5 10/14] Hexagon (tests/tcg/hexagon) Enable HVX tests

2023-02-08 Thread Taylor Simpson
> -Original Message- > From: Anton Johansson > Sent: Wednesday, February 8, 2023 6:54 AM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: richard.hender...@linaro.org; phi...@linaro.org; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: Re:

RE: [PATCH] target/hexagon: Access `pkt/insn` through `ctx`

2023-02-08 Thread Taylor Simpson
> -Original Message- > From: Anton Johansson > Sent: Wednesday, February 8, 2023 10:51 AM > To: qemu-devel@nongnu.org > Cc: a...@rev.ng; Taylor Simpson ; Brian Cain > ; Michael Lambert > Subject: [PATCH] target/hexagon: Access `pkt/insn` through `ctx` > &

RE: [PATCH v5 10/14] Hexagon (tests/tcg/hexagon) Enable HVX tests

2023-02-08 Thread Taylor Simpson
> -Original Message- > From: Taylor Simpson > Sent: Wednesday, February 8, 2023 9:19 AM > To: a...@rev.ng; qemu-devel@nongnu.org > Cc: richard.hender...@linaro.org; phi...@linaro.org; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: RE: [PATCH

RE: [PATCH v3 24/27] target/hexagon: Replace `tb_pc()` with `tb->pc`

2023-02-27 Thread Taylor Simpson
> -Original Message- > From: Anton Johansson > Sent: Monday, February 27, 2023 6:52 AM > To: qemu-devel@nongnu.org > Cc: a...@rev.ng; richard.hender...@linaro.org; pbonz...@redhat.com; > edua...@habkost.net; peter.mayd...@linaro.org; mrol...@gmail.com; >

RE: [PATCH v4 22/31] target/hexagon: Don't use tcg_temp_local_new_*

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com; Philippe Mathieu-Daudé > Subject: [PATCH v4 22/31] target/hexagon: Don't use tcg_temp_local_new_* > > > S

RE: [PATCH v4 23/31] target/hexagon/idef-parser: Drop gen_tmp_local

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH v4 23/31] target/hexagon/idef-parser: Drop gen_tmp_local > > This is now equivalent to gen_tmp

RE: [PATCH v2 25/76] target/hexagon: Drop tcg_temp_free from C code

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH v2 25/76] target/hexagon: Drop tcg_temp_free from C code > > Translators are no longer required to f

RE: [PATCH v2 26/76] target/hexagon: Drop tcg_temp_free from gen_tcg_funcs.py

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH v2 26/76] target/hexagon: Drop tcg_temp_free from > gen_tcg_funcs.py > > Translators are no longer req

RE: [PATCH v2 27/76] target/hexagon/idef-parser: Drop tcg_temp_free

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH v2 27/76] target/hexagon/idef-parser: Drop tcg_temp_free > > Translators are no longer required

RE: [PATCH v2 28/76] target/hexagon/idef-parser: Drop HexValue.is_manual

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH v2 28/76] target/hexagon/idef-parser: Drop > HexValue.is_manual > > This field is no longer u

RE: [PATCH 15/70] target/hexagon: Use tcg_constant_* for gen_constant_from_imm

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH 15/70] target/hexagon: Use tcg_constant_* for > gen_constant_from_imm > > Rename from gen_tmp_value_f

RE: [PATCH 19/70] target/hexagon/idef-parser: Use gen_constant for gen_extend_tcg_width_op

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH 19/70] target/hexagon/idef-parser: Use gen_constant for > gen_extend_tcg_width_op > > We already have

RE: [PATCH 18/70] target/hexagon/idef-parser: Use gen_tmp for gen_rvalue_pred

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH 18/70] target/hexagon/idef-parser: Use gen_tmp for > gen_rvalue_pred > > The allocation is immedia

RE: [PATCH 16/70] target/hexagon/idef-parser: Use gen_tmp for LPCFG

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH 16/70] target/hexagon/idef-parser: Use gen_tmp for LPCFG > > The GET_USR_FIELD macro initializes the outp

RE: [PATCH 17/70] target/hexagon/idef-parser: Use gen_tmp for gen_pred_assign

2023-02-27 Thread Taylor Simpson
.uni-paderborn.de; ys...@users.sourceforge.jp; > gaos...@loongson.cn; jiaxun.y...@flygoat.com; Taylor Simpson > ; a...@rev.ng; mrol...@gmail.com; > edgar.igles...@gmail.com > Subject: [PATCH 17/70] target/hexagon/idef-parser: Use gen_tmp for > gen_pred_assign > > The allocation is immed

RE: [PATCH 19/70] target/hexagon/idef-parser: Use gen_constant for gen_extend_tcg_width_op

2023-02-27 Thread Taylor Simpson
> -Original Message- > From: Richard Henderson > Sent: Monday, February 27, 2023 3:01 PM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: qemu-...@nongnu.org; qemu-...@nongnu.org; qemu- > ri...@nongnu.org; qemu-s3...@nongnu.org; jcmvb...@gmail.com; > kbast...@mail

RE: [PATCH v5 12/14] Hexagon (target/hexagon) Remove gen_log_predicated_reg_write[_pair]

2023-02-27 Thread Taylor Simpson
> -Original Message- > From: Anton Johansson > Sent: Friday, February 24, 2023 6:06 AM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: richard.hender...@linaro.org; phi...@linaro.org; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: Re:

RE: [PATCH] tcg: `reachable_code_pass()` remove empty else-branch

2023-03-01 Thread Taylor Simpson
> -Original Message- > From: Anton Johansson > Sent: Wednesday, March 1, 2023 7:22 AM > To: qemu-devel@nongnu.org > Cc: a...@rev.ng; richard.hender...@linaro.org; Taylor Simpson > > Subject: [PATCH] tcg: `reachable_code_pass()` remove empty else-branch &g

RE: [PATCH v5 13/14] Hexagon (target/hexagon) Reduce manipulation of slot_cancelled

2023-03-01 Thread Taylor Simpson
> -Original Message- > From: Anton Johansson > Sent: Friday, February 24, 2023 7:24 AM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: richard.hender...@linaro.org; phi...@linaro.org; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: Re:

RE: [PATCH v5 05/14] Hexagon (target/hexagon) Analyze packet before generating TCG

2023-03-01 Thread Taylor Simpson
> -Original Message- > From: Anton Johansson > Sent: Thursday, February 23, 2023 10:02 AM > To: Taylor Simpson ; qemu-devel@nongnu.org > Cc: richard.hender...@linaro.org; phi...@linaro.org; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: Re:

RE: [PATCH] include: Don't include qemu/osdep.h

2022-12-12 Thread Taylor Simpson
redhat.com; michael.r...@amd.com; kkost...@redhat.com; > Taylor Simpson ; pal...@dabbelt.com; > alistair.fran...@wdc.com; bin.m...@windriver.com; qemu- > ri...@nongnu.org > Subject: [PATCH] include: Don't include qemu/osdep.h > > docs/devel/style.rst mandates: > > The "

[PULL 10/21] Hexagon (target/hexagon) Use direct block chaining for direct jump/branch

2022-12-16 Thread Taylor Simpson
branch_cond == TCG_COND_NEVER, there isn't a single direct branch in this packet. When branch_cond != TCG_COND_ALWAYS, the value is in hex_branch_taken branch_dest The destination of the branch Reviewed-by: Richard Henderson Signed-off-by: Taylor Si

[PULL 16/21] target/hexagon: introduce new helper functions

2022-12-16 Thread Taylor Simpson
ssandro Di Federico Signed-off-by: Niccolò Izzo Signed-off-by: Anton Johansson Signed-off-by: Taylor Simpson Reviewed-by: Taylor Simpson Message-Id: <20220923173831.227551-6-a...@rev.ng> --- target/hexagon/genptr.h | 13 target/hexagon/macros.h | 9 +++ target/hexago

[PULL 18/21] target/hexagon: import lexer for idef-parser

2022-12-16 Thread Taylor Simpson
From: Paolo Montesel Signed-off-by: Alessandro Di Federico Signed-off-by: Paolo Montesel Signed-off-by: Anton Johansson Signed-off-by: Taylor Simpson Reviewed-by: Taylor Simpson Message-Id: <20220923173831.227551-9-a...@rev.ng> --- target/hexagon/idef-parser/idef-parser.h

[PULL 21/21] target/hexagon: import additional tests

2022-12-16 Thread Taylor Simpson
From: Niccolò Izzo Signed-off-by: Alessandro Di Federico Signed-off-by: Niccolò Izzo Signed-off-by: Anton Johansson Signed-off-by: Taylor Simpson Reviewed-by: Taylor Simpson Message-Id: <20220923173831.227551-12-a...@rev.ng> --- tests/tcg/hexagon/Makefile.target | 28 -

[PULL 17/21] target/hexagon: prepare input for the idef-parser

2022-12-16 Thread Taylor Simpson
Johansson Signed-off-by: Taylor Simpson Reviewed-by: Taylor Simpson Message-Id: <20220923173831.227551-8-a...@rev.ng> --- meson_options.txt | 3 + target/hexagon/gen_idef_parser_funcs.py | 130 ++ target/hexagon/idef-parser/macros.inc

[PULL 15/21] target/hexagon: make helper functions non-static

2022-12-16 Thread Taylor Simpson
idef-parser generated code. Signed-off-by: Alessandro Di Federico Signed-off-by: Paolo Montesel Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Reviewed-by: Taylor Simpson Message-Id: <20220923173831.227551-5-a...@rev.ng> --- target/hexagon/genptr.h

[PULL 20/21] target/hexagon: call idef-parser functions

2022-12-16 Thread Taylor Simpson
From: Alessandro Di Federico Extend gen_tcg_funcs.py in order to emit calls to the functions emitted by the idef-parser, if available. Signed-off-by: Alessandro Di Federico Signed-off-by: Anton Johansson Signed-off-by: Taylor Simpson Reviewed-by: Taylor Simpson Message-Id

[PULL 01/21] Hexagon (target/hexagon) Add pkt and insn to DisasContext

2022-12-16 Thread Taylor Simpson
This enables us to reduce the number of parameters to many functions In particular, the generated functions previously took all 3 as arguments Not only does this simplify the code, it improves the translation time Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id

[PULL 11/21] Hexagon (target/hexagon) Use direct block chaining for tight loops

2022-12-16 Thread Taylor Simpson
PC. Reviewed-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-12-tsimp...@quicinc.com> --- target/hexagon/cpu.h | 13 +++--- target/hexagon/gen_tcg.h | 3 ++ target/hexagon/translate.h | 1 + target/hexagon/genptr.c

[PULL 13/21] target/hexagon: import README for idef-parser

2022-12-16 Thread Taylor Simpson
From: Alessandro Di Federico Signed-off-by: Alessandro Di Federico Signed-off-by: Anton Johansson Signed-off-by: Taylor Simpson Reviewed-by: Taylor Simpson Message-Id: <20220923173831.227551-3-a...@rev.ng> --- target/hexagon/idef-parser/README.rst | 722 ++

[PULL 02/21] Hexagon (target/hexagon) Fix predicated assignment to .tmp and .cur

2022-12-16 Thread Taylor Simpson
Henderson Co-authored-by: Matheus Tavares Bernardino Signed-off-by: Matheus Tavares Bernardino Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166-3-tsimp...@quicinc.com> --- target/hexagon/translate.h | 6 +++ tests/tcg/hexagon/hvx_misc.c

[PULL 04/21] Hexagon (target/hexagon) Only use branch_taken when packet has multi cof

2022-12-16 Thread Taylor Simpson
er to the Packet structure, and pass this information to the needed functions. When there is a generated helper function with cof, the generator will pass this pkt_has_multi_cof as a runtime value. Acked-by: Richard Henderson Signed-off-by: Taylor Simpson Message-Id: <20221108162906.3166

[PULL 12/21] target/hexagon: update MAINTAINERS for idef-parser

2022-12-16 Thread Taylor Simpson
From: Alessandro Di Federico Signed-off-by: Alessandro Di Federico Signed-off-by: Anton Johansson Signed-off-by: Taylor Simpson Reviewed-by: Richard Henderson Reviewed-by: Taylor Simpson Message-Id: <20220923173831.227551-2-a...@rev.ng> --- MAINTAINERS | 9 + 1 file chan

<    2   3   4   5   6   7   8   9   10   11   >