Page MenuHomePhabricator

[RISCV] Change TARGET_BUILTIN require to zve32x for vector instruction
Needs ReviewPublic

Authored by eopXD on Oct 27 2021, 4:47 AM.

Details

Summary

According to v-spec v1.0-rc2, zve-32x is the new minimum extension to include
to have vector instructions.

Diff Detail

Unit TestsFailed

TimeTest
520 msx64 debian > AddressSanitizer-x86_64-linux-dynamic.TestCases::exitcode.cpp
Script: -- : 'RUN: at line 1'; /var/lib/buildkite-agent/builds/llvm-project/build/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -shared-libasan -g -Wno-deprecated-declarations /var/lib/buildkite-agent/builds/llvm-project/compiler-rt/test/asan/TestCases/exitcode.cpp -o /var/lib/buildkite-agent/builds/llvm-project/build/projects/compiler-rt/test/asan/X86_64LinuxDynamicConfig/TestCases/Output/exitcode.cpp.tmp
820 msx64 debian > AddressSanitizer-x86_64-linux.TestCases::exitcode.cpp
Script: -- : 'RUN: at line 1'; /var/lib/buildkite-agent/builds/llvm-project/build/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -g -Wno-deprecated-declarations /var/lib/buildkite-agent/builds/llvm-project/compiler-rt/test/asan/TestCases/exitcode.cpp -o /var/lib/buildkite-agent/builds/llvm-project/build/projects/compiler-rt/test/asan/X86_64LinuxConfig/TestCases/Output/exitcode.cpp.tmp

Event Timeline

eopXD created this revision.Oct 27 2021, 4:47 AM
eopXD requested review of this revision.Oct 27 2021, 4:47 AM
Herald added projects: Restricted Project, Restricted Project. · View Herald TranscriptOct 27 2021, 4:47 AM
eopXD retitled this revision from [RISCV][RVV] Change TARGET_BUILTIN require to zve32x to [WIP][RISCV] Change TARGET_BUILTIN require to zve32x for vector instruction.
eopXD edited the summary of this revision. (Show Details)Oct 27 2021, 4:55 AM
eopXD updated this revision to Diff 382615.Oct 27 2021, 5:06 AM

Update code.

eopXD updated this revision to Diff 383977.Mon, Nov 1, 11:07 PM

Rebase.

eopXD updated this revision to Diff 383983.Mon, Nov 1, 11:52 PM

Follow clang-format.

eopXD retitled this revision from [WIP][RISCV] Change TARGET_BUILTIN require to zve32x for vector instruction to [RISCV] Change TARGET_BUILTIN require to zve32x for vector instruction.Tue, Nov 2, 12:09 AM
eopXD edited the summary of this revision. (Show Details)

The title of this patch isn't descriptive of the changes in this patch. Based on the title I would only expect changes to RISCVEmitter.cpp. Can you clarify the title?

craig.topper added inline comments.Fri, Nov 5, 1:17 PM
clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vaadd.c
3 ↗(On Diff #383983)

Why do we need to add zve32x and zve64x to the command line? Doesn't zve64x imply zve32x?

eopXD added inline comments.Sat, Nov 6, 2:14 AM
clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vaadd.c
3 ↗(On Diff #383983)

Just added D113336 to resolve this. I will rebase this patch and change test cases.

eopXD updated this revision to Diff 385276.Sat, Nov 6, 7:47 AM

Rebase.

eopXD updated this revision to Diff 385278.Sat, Nov 6, 7:55 AM

Update code.

eopXD marked an inline comment as done.Sat, Nov 6, 7:56 AM
eopXD added inline comments.
clang/test/CodeGen/RISCV/rvv-intrinsics-overloaded/vaadd.c
3 ↗(On Diff #383983)

Rebased.