ping

could relevant maintainers take a look?

thank you!

On Tue, Jan 30, 2024 at 04:18:49PM -0800, Tyler Retzlaff wrote:
> Remove use of statement expression syntax in expansion of
> MOVEUNALIGNED_LEFT47_IMM and MOVEUNALIGNED_LEFT47 macro expansions.
> 
> There appears to be no need to use the statement expression compiler
> extension a simple block should work.
> 
> Signed-off-by: Tyler Retzlaff <roret...@linux.microsoft.com>
> ---
>  lib/eal/x86/include/rte_memcpy.h | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/eal/x86/include/rte_memcpy.h 
> b/lib/eal/x86/include/rte_memcpy.h
> index fd151be..72a9229 100644
> --- a/lib/eal/x86/include/rte_memcpy.h
> +++ b/lib/eal/x86/include/rte_memcpy.h
> @@ -610,7 +610,7 @@
>   * - __m128i <xmm0> ~ <xmm8> must be pre-defined
>   */
>  #define MOVEUNALIGNED_LEFT47_IMM(dst, src, len, offset)                      
>                                \
> -__extension__ ({                                                             
>                                \
> +{                                                                            
>                 \
>      size_t tmp;                                                              
>                                   \
>      while (len >= 128 + 16 - offset) {                                       
>                                \
>          xmm0 = _mm_loadu_si128((const __m128i *)(const void *)((const 
> uint8_t *)src - offset + 0 * 16));                  \
> @@ -656,7 +656,7 @@
>          src = (const uint8_t *)src + tmp;                                    
>                                \
>          dst = (uint8_t *)dst + tmp;                                          
>                                \
>      }                                                                        
>                                \
> -})
> +}
>  
>  /**
>   * Macro for copying unaligned block from one location to another,
> @@ -671,7 +671,7 @@
>   * - __m128i <xmm0> ~ <xmm8> used in MOVEUNALIGNED_LEFT47_IMM must be 
> pre-defined
>   */
>  #define MOVEUNALIGNED_LEFT47(dst, src, len, offset)                   \
> -__extension__ ({                                                      \
> +{                                                      \
>      switch (offset) {                                                 \
>      case 0x01: MOVEUNALIGNED_LEFT47_IMM(dst, src, n, 0x01); break;    \
>      case 0x02: MOVEUNALIGNED_LEFT47_IMM(dst, src, n, 0x02); break;    \
> @@ -690,7 +690,7 @@
>      case 0x0F: MOVEUNALIGNED_LEFT47_IMM(dst, src, n, 0x0F); break;    \
>      default:;                                                         \
>      }                                                                 \
> -})
> +}
>  
>  static __rte_always_inline void *
>  rte_memcpy_generic(void *dst, const void *src, size_t n)
> -- 
> 1.8.3.1

Reply via email to