All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates
@ 2026-05-04 12:50 Philippe Mathieu-Daudé
  2026-05-04 12:50 ` [PATCH 1/3] docs/devel/tcg-ops: Stop listing dup2_vec() Philippe Mathieu-Daudé
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Philippe Mathieu-Daudé @ 2026-05-04 12:50 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Pierrick Bouvier, Richard Henderson,
	Philippe Mathieu-Daudé

Update TCG opcode list.

Philippe Mathieu-Daudé (3):
  docs/devel/tcg-ops: Stop listing dup2_vec()
  docs/devel/tcg-ops: List more vector opcodes
  docs/devel/tcg-ops: Slightly expand on discard() opcode

 docs/devel/tcg-ops.rst | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

-- 
2.53.0



^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/3] docs/devel/tcg-ops: Stop listing dup2_vec()
  2026-05-04 12:50 [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Philippe Mathieu-Daudé
@ 2026-05-04 12:50 ` Philippe Mathieu-Daudé
  2026-05-04 16:57   ` Pierrick Bouvier
  2026-05-04 12:50 ` [PATCH 2/3] docs/devel/tcg-ops: List more vector opcodes Philippe Mathieu-Daudé
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 10+ messages in thread
From: Philippe Mathieu-Daudé @ 2026-05-04 12:50 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Pierrick Bouvier, Richard Henderson,
	Philippe Mathieu-Daudé

dup2_vec() opcode was removed in commit 6e7b13936d4
("tcg: Remove INDEX_op_dup2_vec").

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 docs/devel/tcg-ops.rst | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/docs/devel/tcg-ops.rst b/docs/devel/tcg-ops.rst
index fd3a50bf4c4..c417ebe65a8 100644
--- a/docs/devel/tcg-ops.rst
+++ b/docs/devel/tcg-ops.rst
@@ -769,11 +769,6 @@ specifies the length of the element (if applicable) in log2 8-bit units.
      - | Similarly, for a constant.
        | Smaller values will be replicated to host register size by the expanders.
 
-   * - dup2_vec *v0*, *r1*, *r2*
-
-     - | Duplicate *r2*:*r1* into TYPE/64 copies across *v0*. This opcode is
-         only present for 32-bit hosts.
-
    * - add_vec *v0*, *v1*, *v2*
 
      - | *v0* = *v1* + *v2*, in elements across the vector.
-- 
2.53.0



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/3] docs/devel/tcg-ops: List more vector opcodes
  2026-05-04 12:50 [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Philippe Mathieu-Daudé
  2026-05-04 12:50 ` [PATCH 1/3] docs/devel/tcg-ops: Stop listing dup2_vec() Philippe Mathieu-Daudé
@ 2026-05-04 12:50 ` Philippe Mathieu-Daudé
  2026-05-04 16:57   ` Pierrick Bouvier
  2026-05-28 10:16   ` Alex Bennée
  2026-05-04 12:50 ` [PATCH 3/3] docs/devel/tcg-ops: Slightly expand on discard() opcode Philippe Mathieu-Daudé
  2026-05-04 17:24 ` [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Pierrick Bouvier
  3 siblings, 2 replies; 10+ messages in thread
From: Philippe Mathieu-Daudé @ 2026-05-04 12:50 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Pierrick Bouvier, Richard Henderson,
	Philippe Mathieu-Daudé

Few logical and arithmetic vector opcodes are missing, list them.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 docs/devel/tcg-ops.rst | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/docs/devel/tcg-ops.rst b/docs/devel/tcg-ops.rst
index c417ebe65a8..56c0b0bd3de 100644
--- a/docs/devel/tcg-ops.rst
+++ b/docs/devel/tcg-ops.rst
@@ -816,10 +816,16 @@ specifies the length of the element (if applicable) in log2 8-bit units.
 
    * - and_vec *v0*, *v1*, *v2*
 
+       nand_vec *v0*, *v1*, *v2*
+
        or_vec *v0*, *v1*, *v2*
 
+       nor_vec *v0*, *v1*, *v2*
+
        xor_vec *v0*, *v1*, *v2*
 
+       eqv_vec *v0*, *v1*, *v2*
+
        andc_vec *v0*, *v1*, *v2*
 
        orc_vec *v0*, *v1*, *v2*
@@ -852,6 +858,8 @@ specifies the length of the element (if applicable) in log2 8-bit units.
 
        sars_vec *v0*, *v1*, *s2*
 
+       rotls_vec *v0*, *v1*, *s2*
+
      - | Similarly for logical and arithmetic right shift, and left rotate.
 
    * - shlv_vec *v0*, *v1*, *v2*
-- 
2.53.0



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/3] docs/devel/tcg-ops: Slightly expand on discard() opcode
  2026-05-04 12:50 [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Philippe Mathieu-Daudé
  2026-05-04 12:50 ` [PATCH 1/3] docs/devel/tcg-ops: Stop listing dup2_vec() Philippe Mathieu-Daudé
  2026-05-04 12:50 ` [PATCH 2/3] docs/devel/tcg-ops: List more vector opcodes Philippe Mathieu-Daudé
@ 2026-05-04 12:50 ` Philippe Mathieu-Daudé
  2026-05-04 16:59   ` Pierrick Bouvier
  2026-05-04 17:24 ` [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Pierrick Bouvier
  3 siblings, 1 reply; 10+ messages in thread
From: Philippe Mathieu-Daudé @ 2026-05-04 12:50 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Pierrick Bouvier, Richard Henderson,
	Philippe Mathieu-Daudé

No need to precise the argument size.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 docs/devel/tcg-ops.rst | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/docs/devel/tcg-ops.rst b/docs/devel/tcg-ops.rst
index 56c0b0bd3de..73d8bdcf942 100644
--- a/docs/devel/tcg-ops.rst
+++ b/docs/devel/tcg-ops.rst
@@ -437,10 +437,11 @@ Misc
          for consistency with the other bswap opcodes. For future
          compatibility, the flags should be zero.
 
-   * - discard_i32/i64 *t0*
+   * - discard *t0*
 
-     - | Indicate that the value of *t0* won't be used later. It is useful to
-         force dead code elimination.
+     - | Indicate that the value of *t0* won't be used later. This is used to
+         force dead code elimination, particularly for condition code
+         optimizations where TCG might otherwise assume a global is still live.
 
    * - deposit *dest*, *t1*, *t2*, *pos*, *len*
 
-- 
2.53.0



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/3] docs/devel/tcg-ops: Stop listing dup2_vec()
  2026-05-04 12:50 ` [PATCH 1/3] docs/devel/tcg-ops: Stop listing dup2_vec() Philippe Mathieu-Daudé
@ 2026-05-04 16:57   ` Pierrick Bouvier
  0 siblings, 0 replies; 10+ messages in thread
From: Pierrick Bouvier @ 2026-05-04 16:57 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel; +Cc: Paolo Bonzini, Richard Henderson

On 5/4/2026 5:50 AM, Philippe Mathieu-Daudé wrote:
> dup2_vec() opcode was removed in commit 6e7b13936d4
> ("tcg: Remove INDEX_op_dup2_vec").
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  docs/devel/tcg-ops.rst | 5 -----
>  1 file changed, 5 deletions(-)
> 

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/3] docs/devel/tcg-ops: List more vector opcodes
  2026-05-04 12:50 ` [PATCH 2/3] docs/devel/tcg-ops: List more vector opcodes Philippe Mathieu-Daudé
@ 2026-05-04 16:57   ` Pierrick Bouvier
  2026-05-28 10:16   ` Alex Bennée
  1 sibling, 0 replies; 10+ messages in thread
From: Pierrick Bouvier @ 2026-05-04 16:57 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel; +Cc: Paolo Bonzini, Richard Henderson

On 5/4/2026 5:50 AM, Philippe Mathieu-Daudé wrote:
> Few logical and arithmetic vector opcodes are missing, list them.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  docs/devel/tcg-ops.rst | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/3] docs/devel/tcg-ops: Slightly expand on discard() opcode
  2026-05-04 12:50 ` [PATCH 3/3] docs/devel/tcg-ops: Slightly expand on discard() opcode Philippe Mathieu-Daudé
@ 2026-05-04 16:59   ` Pierrick Bouvier
  0 siblings, 0 replies; 10+ messages in thread
From: Pierrick Bouvier @ 2026-05-04 16:59 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel; +Cc: Paolo Bonzini, Richard Henderson

On 5/4/2026 5:50 AM, Philippe Mathieu-Daudé wrote:
> No need to precise the argument size.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  docs/devel/tcg-ops.rst | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates
  2026-05-04 12:50 [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Philippe Mathieu-Daudé
                   ` (2 preceding siblings ...)
  2026-05-04 12:50 ` [PATCH 3/3] docs/devel/tcg-ops: Slightly expand on discard() opcode Philippe Mathieu-Daudé
@ 2026-05-04 17:24 ` Pierrick Bouvier
  2026-05-28  7:57   ` Philippe Mathieu-Daudé
  3 siblings, 1 reply; 10+ messages in thread
From: Pierrick Bouvier @ 2026-05-04 17:24 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel; +Cc: Paolo Bonzini, Richard Henderson

On 5/4/2026 5:50 AM, Philippe Mathieu-Daudé wrote:
> Update TCG opcode list.
> 
> Philippe Mathieu-Daudé (3):
>   docs/devel/tcg-ops: Stop listing dup2_vec()
>   docs/devel/tcg-ops: List more vector opcodes
>   docs/devel/tcg-ops: Slightly expand on discard() opcode
> 
>  docs/devel/tcg-ops.rst | 20 ++++++++++++--------
>  1 file changed, 12 insertions(+), 8 deletions(-)
> 

I will let Richard pull that as part of tcg subsystem except if he
prefers me to pull it through docs.

Regards,
Pierrick


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates
  2026-05-04 17:24 ` [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Pierrick Bouvier
@ 2026-05-28  7:57   ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 10+ messages in thread
From: Philippe Mathieu-Daudé @ 2026-05-28  7:57 UTC (permalink / raw)
  To: Pierrick Bouvier, qemu-devel; +Cc: Paolo Bonzini, Richard Henderson

On 4/5/26 19:24, Pierrick Bouvier wrote:
> On 5/4/2026 5:50 AM, Philippe Mathieu-Daudé wrote:
>> Update TCG opcode list.
>>
>> Philippe Mathieu-Daudé (3):
>>    docs/devel/tcg-ops: Stop listing dup2_vec()
>>    docs/devel/tcg-ops: List more vector opcodes
>>    docs/devel/tcg-ops: Slightly expand on discard() opcode
>>
>>   docs/devel/tcg-ops.rst | 20 ++++++++++++--------
>>   1 file changed, 12 insertions(+), 8 deletions(-)
>>
> 
> I will let Richard pull that as part of tcg subsystem except if he
> prefers me to pull it through docs.

OK.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/3] docs/devel/tcg-ops: List more vector opcodes
  2026-05-04 12:50 ` [PATCH 2/3] docs/devel/tcg-ops: List more vector opcodes Philippe Mathieu-Daudé
  2026-05-04 16:57   ` Pierrick Bouvier
@ 2026-05-28 10:16   ` Alex Bennée
  1 sibling, 0 replies; 10+ messages in thread
From: Alex Bennée @ 2026-05-28 10:16 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: qemu-devel, Paolo Bonzini, Pierrick Bouvier, Richard Henderson

Philippe Mathieu-Daudé <philmd@linaro.org> writes:

> Few logical and arithmetic vector opcodes are missing, list them.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>  docs/devel/tcg-ops.rst | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/docs/devel/tcg-ops.rst b/docs/devel/tcg-ops.rst
> index c417ebe65a8..56c0b0bd3de 100644
> --- a/docs/devel/tcg-ops.rst
> +++ b/docs/devel/tcg-ops.rst
> @@ -816,10 +816,16 @@ specifies the length of the element (if applicable) in log2 8-bit units.
>  
>     * - and_vec *v0*, *v1*, *v2*
>  
> +       nand_vec *v0*, *v1*, *v2*
> +
>         or_vec *v0*, *v1*, *v2*
>  
> +       nor_vec *v0*, *v1*, *v2*
> +
>         xor_vec *v0*, *v1*, *v2*
>  
> +       eqv_vec *v0*, *v1*, *v2*
> +
>         andc_vec *v0*, *v1*, *v2*
>  
>         orc_vec *v0*, *v1*, *v2*
> @@ -852,6 +858,8 @@ specifies the length of the element (if applicable) in log2 8-bit units.
>  
>         sars_vec *v0*, *v1*, *s2*
>  
> +       rotls_vec *v0*, *v1*, *s2*
> +
>       - | Similarly for logical and arithmetic right shift, and left rotate.
>  
>     * - shlv_vec *v0*, *v1*, *v2*

Longer term it would be nice to just auto-generate these from tcg-op.h
and tcg-op-common.h but I guess we would need to see if kdoc can handle
grouping of sets of ops rather than having to exhaustively enumerate
every bitop with comments. 

Anyway:

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2026-05-28 10:16 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-04 12:50 [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Philippe Mathieu-Daudé
2026-05-04 12:50 ` [PATCH 1/3] docs/devel/tcg-ops: Stop listing dup2_vec() Philippe Mathieu-Daudé
2026-05-04 16:57   ` Pierrick Bouvier
2026-05-04 12:50 ` [PATCH 2/3] docs/devel/tcg-ops: List more vector opcodes Philippe Mathieu-Daudé
2026-05-04 16:57   ` Pierrick Bouvier
2026-05-28 10:16   ` Alex Bennée
2026-05-04 12:50 ` [PATCH 3/3] docs/devel/tcg-ops: Slightly expand on discard() opcode Philippe Mathieu-Daudé
2026-05-04 16:59   ` Pierrick Bouvier
2026-05-04 17:24 ` [PATCH 0/3] docs/devel/tcg-ops: Minor documentation updates Pierrick Bouvier
2026-05-28  7:57   ` Philippe Mathieu-Daudé

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.