[clang] [llvm] [RISCV] Add packed narrowing convert intrinsics (PR #210389)

via cfe-commits cfe-commits at lists.llvm.org
Fri Jul 17 14:50:46 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 90422 tests passed
* 1690 tests skipped
* 2 tests failed

## Failed Tests
(click on a test name to see its output)

### lldb-api
<details>
<summary>lldb-api.functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py</summary>

```
Script:
--
/usr/bin/python3 /home/gha/actions-runner/_work/llvm-project/llvm-project/lldb/test/API/dotest.py -u CXXFLAGS -u CFLAGS --env LLVM_LIBS_DIR=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/./lib --env LLVM_INCLUDE_DIR=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/include --env LLVM_TOOLS_DIR=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/./bin --libcxx-include-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/include/c++/v1 --libcxx-include-target-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/include/x86_64-unknown-linux-gnu/c++/v1 --libcxx-library-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/./lib/x86_64-unknown-linux-gnu --triple x86_64-unknown-linux-gnu --build-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lldb-test-build --lldb-module-cache-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lldb-test-build/module-cache-lldb/lldb-api --clang-module-cache-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lldb-test-build/module-cache-clang/lldb-api --executable /home/gha/actions-runner/_work/llvm-project/llvm-project/build/./bin/lldb --lldb-python-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/local/lib/python3.12/dist-packages --compiler /home/gha/actions-runner/_work/llvm-project/llvm-project/build/./bin/clang --dsymutil /home/gha/actions-runner/_work/llvm-project/llvm-project/build/./bin/dsymutil --make /usr/bin/gmake --llvm-tools-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/./bin --lldb-obj-root /home/gha/actions-runner/_work/llvm-project/llvm-project/build/tools/lldb --lldb-libs-dir /home/gha/actions-runner/_work/llvm-project/llvm-project/build/./lib --cmake-build-type Release /home/gha/actions-runner/_work/llvm-project/llvm-project/lldb/test/API/functionalities/scripted_frame_provider/circular_dependency -p TestFrameProviderCircularDependency.py
--
Exit Code: 1

Command Output (stdout):
--
Skipping the following test categories: msvcstl, dsym, pdb, gmodules, debugserver, objc

--
Command Output (stderr):
--
FAIL: LLDB (/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang-x86_64) :: test_circular_dependency_evaluate_expression_in_get_frame (TestFrameProviderCircularDependency.FrameProviderCircularDependencyTestCase.test_circular_dependency_evaluate_expression_in_get_frame)
Log Files:
 - /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lldb-test-build/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency/Failure_test_circular_dependency_evaluate_expression_in_get_frame.log
PASS: LLDB (/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang-x86_64) :: test_circular_dependency_handle_command_in_init (TestFrameProviderCircularDependency.FrameProviderCircularDependencyTestCase.test_circular_dependency_handle_command_in_init)
PASS: LLDB (/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang-x86_64) :: test_circular_dependency_with_function_replacement (TestFrameProviderCircularDependency.FrameProviderCircularDependencyTestCase.test_circular_dependency_with_function_replacement)
======================================================================
FAIL: test_circular_dependency_evaluate_expression_in_get_frame (TestFrameProviderCircularDependency.FrameProviderCircularDependencyTestCase.test_circular_dependency_evaluate_expression_in_get_frame)
   Test that calling EvaluateExpression in get_frame_at_index doesn't
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/gha/actions-runner/_work/llvm-project/llvm-project/lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py", line 204, in test_circular_dependency_evaluate_expression_in_get_frame
    self.assertIsNotNone(
AssertionError: unexpectedly None : Frame 1 should have function name
Config=x86_64-/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang
----------------------------------------------------------------------
Ran 3 tests in 36.052s

FAILED (failures=1)

--

```
</details>

### cross-project-tests
<details>
<summary>cross-project-tests.intrinsic-header-tests/riscv_packed_simd.c</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 4
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c -O2 -S -o - --target=riscv32    -menable-experimental-extensions -march=rv32i_p0p21    -Werror -Wextra -Xclang -verify    | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c --check-prefixes=CHECK,RV32
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c -O2 -S -o - --target=riscv32 -menable-experimental-extensions -march=rv32i_p0p21 -Werror -Wextra -Xclang -verify
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c --check-prefixes=CHECK,RV32
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c:2414:10: error: RV32: expected string not found in input
# | // RV32: pncvt.b
# |          ^
# | <stdin>:3792:19: note: scanning from here
# | test_punzipe_i8x4: # @test_punzipe_i8x4
# |                   ^
# | <stdin>:3793:13: note: possible intended match here
# | # %bb.0: # %entry
# |             ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c:2419:10: error: RV32: expected string not found in input
# | // RV32: pncvth.b
# |          ^
# | <stdin>:3805:19: note: scanning from here
# | test_punzipo_i8x4: # @test_punzipo_i8x4
# |                   ^
# | <stdin>:3816:12: note: possible intended match here
# |  # -- End function
# |            ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c:2424:10: error: RV32: expected string not found in input
# | // RV32: pncvt.b
# |          ^
# | <stdin>:3820:19: note: scanning from here
# | test_punzipe_u8x4: # @test_punzipe_u8x4
# |                   ^
# | <stdin>:3821:13: note: possible intended match here
# | # %bb.0: # %entry
# |             ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c:2429:10: error: RV32: expected string not found in input
# | // RV32: pncvth.b
# |          ^
# | <stdin>:3833:19: note: scanning from here
# | test_punzipo_u8x4: # @test_punzipo_u8x4
# |                   ^
# | <stdin>:3844:12: note: possible intended match here
# |  # -- End function
# |            ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c:2434:10: error: RV32: expected string not found in input
# | // RV32: pncvt.h
# |          ^
# | <stdin>:3848:20: note: scanning from here
# | test_punzipe_i16x2: # @test_punzipe_i16x2
# |                    ^
# | <stdin>:3849:13: note: possible intended match here
# | # %bb.0: # %entry
# |             ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c:2439:10: error: RV32: expected string not found in input
# | // RV32: pncvth.h
# |          ^
# | <stdin>:3858:20: note: scanning from here
# | test_punzipo_i16x2: # @test_punzipo_i16x2
# |                    ^
# | <stdin>:3866:12: note: possible intended match here
# |  # -- End function
# |            ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c:2444:10: error: RV32: expected string not found in input
# | // RV32: pncvt.h
# |          ^
# | <stdin>:3870:20: note: scanning from here
# | test_punzipe_u16x2: # @test_punzipe_u16x2
# |                    ^
# | <stdin>:3871:13: note: possible intended match here
# | # %bb.0: # %entry
# |             ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c:2449:10: error: RV32: expected string not found in input
# | // RV32: pncvth.h
# |          ^
# | <stdin>:3880:20: note: scanning from here
# | test_punzipo_u16x2: # @test_punzipo_u16x2
# |                    ^
# | <stdin>:3888:12: note: possible intended match here
# |  # -- End function
# |            ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |               .
# |               .
# |               .
# |            3787:  .size test_pzip_u16x4, .Lfunc_end363-test_pzip_u16x4 
# |            3788:  # -- End function 
# |            3789:  .globl test_punzipe_i8x4 # -- Begin function test_punzipe_i8x4 
# |            3790:  .p2align 2 
# |            3791:  .type test_punzipe_i8x4, at function 
# |            3792: test_punzipe_i8x4: # @test_punzipe_i8x4 
# | check:2414'0                      {                        search range start (exclusive)
# | check:2414'1                                               error: no match found in search range
# |            3793: # %bb.0: # %entry 
# | check:2414'2                 ?       possible intended match
# |            3794:  srli a3, a1, 16 
# |            3795:  srli a2, a0, 16 
# |            3796:  ppaire.db a0, a0, a2 
# |            3797:  pack a0, a0, a1 
# |            3798:  ret 
# |            3799: .Lfunc_end364: 
# |            3800:  .size test_punzipe_i8x4, .Lfunc_end364-test_punzipe_i8x4 
# |            3801:  # -- End function 
# |            3802:  .globl test_punzipo_i8x4 # -- Begin function test_punzipo_i8x4 
# |            3803:  .p2align 2 
# |            3804:  .type test_punzipo_i8x4, at function 
# |            3805: test_punzipo_i8x4: # @test_punzipo_i8x4 
# | check:2414'3                       }                       search range end (exclusive)
# | check:2419'0                      {                        search range start (exclusive)
# | check:2419'1                                               error: no match found in search range
# |            3806: # %bb.0: # %entry 
# |            3807:  srli a3, a1, 24 
# |            3808:  srli a1, a1, 8 
# |            3809:  srli a2, a0, 24 
# |            3810:  srli a0, a0, 8 
# |            3811:  ppaire.db a0, a0, a2 
# |            3812:  pack a0, a0, a1 
# |            3813:  ret 
# |            3814: .Lfunc_end365: 
# |            3815:  .size test_punzipo_i8x4, .Lfunc_end365-test_punzipo_i8x4 
# |            3816:  # -- End function 
# | check:2419'2                ?         possible intended match
# |            3817:  .globl test_punzipe_u8x4 # -- Begin function test_punzipe_u8x4 
# |            3818:  .p2align 2 
# |            3819:  .type test_punzipe_u8x4, at function 
# |            3820: test_punzipe_u8x4: # @test_punzipe_u8x4 
# | check:2419'3                       }                       search range end (exclusive)
# | check:2424'0                      {                        search range start (exclusive)
# | check:2424'1                                               error: no match found in search range
# |            3821: # %bb.0: # %entry 
# | check:2424'2                 ?       possible intended match
# |            3822:  srli a3, a1, 16 
# |            3823:  srli a2, a0, 16 
# |            3824:  ppaire.db a0, a0, a2 
# |            3825:  pack a0, a0, a1 
# |            3826:  ret 
# |            3827: .Lfunc_end366: 
# |            3828:  .size test_punzipe_u8x4, .Lfunc_end366-test_punzipe_u8x4 
# |            3829:  # -- End function 
# |            3830:  .globl test_punzipo_u8x4 # -- Begin function test_punzipo_u8x4 
# |            3831:  .p2align 2 
# |            3832:  .type test_punzipo_u8x4, at function 
# |            3833: test_punzipo_u8x4: # @test_punzipo_u8x4 
# | check:2424'3                       }                       search range end (exclusive)
# | check:2429'0                      {                        search range start (exclusive)
# | check:2429'1                                               error: no match found in search range
# |            3834: # %bb.0: # %entry 
# |            3835:  srli a3, a1, 24 
# |            3836:  srli a1, a1, 8 
# |            3837:  srli a2, a0, 24 
# |            3838:  srli a0, a0, 8 
# |            3839:  ppaire.db a0, a0, a2 
# |            3840:  pack a0, a0, a1 
# |            3841:  ret 
# |            3842: .Lfunc_end367: 
# |            3843:  .size test_punzipo_u8x4, .Lfunc_end367-test_punzipo_u8x4 
# |            3844:  # -- End function 
# | check:2429'2                ?         possible intended match
# |            3845:  .globl test_punzipe_i16x2 # -- Begin function test_punzipe_i16x2 
# |            3846:  .p2align 2 
# |            3847:  .type test_punzipe_i16x2, at function 
# |            3848: test_punzipe_i16x2: # @test_punzipe_i16x2 
# | check:2429'3                        }                        search range end (exclusive)
# | check:2434'0                       {                         search range start (exclusive)
# | check:2434'1                                                 error: no match found in search range
# |            3849: # %bb.0: # %entry 
# | check:2434'2                 ?       possible intended match
# |            3850:  pack a0, a0, a1 
# |            3851:  ret 
# |            3852: .Lfunc_end368: 
# |            3853:  .size test_punzipe_i16x2, .Lfunc_end368-test_punzipe_i16x2 
# |            3854:  # -- End function 
# |            3855:  .globl test_punzipo_i16x2 # -- Begin function test_punzipo_i16x2 
# |            3856:  .p2align 2 
# |            3857:  .type test_punzipo_i16x2, at function 
# |            3858: test_punzipo_i16x2: # @test_punzipo_i16x2 
# | check:2434'3                        }                        search range end (exclusive)
# | check:2439'0                       {                         search range start (exclusive)
# | check:2439'1                                                 error: no match found in search range
# |            3859: # %bb.0: # %entry 
# |            3860:  srli a1, a1, 16 
# |            3861:  srli a0, a0, 16 
# |            3862:  pack a0, a0, a1 
# |            3863:  ret 
# |            3864: .Lfunc_end369: 
# |            3865:  .size test_punzipo_i16x2, .Lfunc_end369-test_punzipo_i16x2 
# |            3866:  # -- End function 
# | check:2439'2                ?         possible intended match
# |            3867:  .globl test_punzipe_u16x2 # -- Begin function test_punzipe_u16x2 
# |            3868:  .p2align 2 
# |            3869:  .type test_punzipe_u16x2, at function 
# |            3870: test_punzipe_u16x2: # @test_punzipe_u16x2 
# | check:2439'3                        }                        search range end (exclusive)
# | check:2444'0                       {                         search range start (exclusive)
# | check:2444'1                                                 error: no match found in search range
# |            3871: # %bb.0: # %entry 
# | check:2444'2                 ?       possible intended match
# |            3872:  pack a0, a0, a1 
# |            3873:  ret 
# |            3874: .Lfunc_end370: 
# |            3875:  .size test_punzipe_u16x2, .Lfunc_end370-test_punzipe_u16x2 
# |            3876:  # -- End function 
# |            3877:  .globl test_punzipo_u16x2 # -- Begin function test_punzipo_u16x2 
# |            3878:  .p2align 2 
# |            3879:  .type test_punzipo_u16x2, at function 
# |            3880: test_punzipo_u16x2: # @test_punzipo_u16x2 
# | check:2444'3                        }                        search range end (exclusive)
# | check:2449'0                       {                         search range start (exclusive)
# | check:2449'1                                                 error: no match found in search range
# |            3
# | ...
# `---data was truncated (10240/11140) (change limit with -D output_limit=N)
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/210389


More information about the cfe-commits mailing list