Skip to content

[RISCV] Add SiFive sf.vqmacc tests to vmv-copy.mir. NFC #124075

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jan 23, 2025

Conversation

topperc
Copy link
Collaborator

@topperc topperc commented Jan 23, 2025

The vqmaccu.2x8x2 test is currently being miscompiled. We need to use a whole register move instead of vmv.v.v. The input has VL elements with EEW=8 EMUL=4. The output has VL/4 elements with EEW=32 EMUL=4. We can't use the original VL a vmv.v.v.

Te vqmaccu.2x8x2 test is currently being miscompiled. We need
to use a whole register move instead of vmv.v.v. The input has
VL elements with EEW=8 EMUL=4. The output has VL/4 elements with
EEW=32 EMUL=4. We can't use the original VL a vmv.v.v.
Copy link

github-actions bot commented Jan 23, 2025

⚠️ undef deprecator found issues in your code. ⚠️

You can test this locally with the following command:
git diff -U0 --pickaxe-regex -S '([^a-zA-Z0-9#_-]undef[^a-zA-Z0-9_-]|UndefValue::get)' 1937a36209bc5f3636e7c98a1638ee9f082b4d2b 67f1464b49f91af07e19df5c48f8d91aa3207b2e

The following files introduce new uses of undef:

  • llvm/test/CodeGen/RISCV/rvv/vmv-copy.mir

Undef is now deprecated and should only be used in the rare cases where no replacement is possible. For example, a load of uninitialized memory yields undef. You should use poison values for placeholders instead.

In tests, avoid using undef and having tests that trigger undefined behavior. If you need an operand with some unimportant value, you can add a new argument to the function and use that instead.

For example, this is considered a bad practice:

define void @fn() {
  ...
  br i1 undef, ...
}

Please use the following instead:

define void @fn(i1 %cond) {
  ...
  br i1 %cond, ...
}

Please refer to the Undefined Behavior Manual for more information.

Copy link
Contributor

@wangpc-pp wangpc-pp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

Copy link
Collaborator

@preames preames left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@topperc topperc merged commit 2f6b0b4 into llvm:main Jan 23, 2025
4 of 7 checks passed
@topperc topperc deleted the pr/qmacc-test branch January 23, 2025 18:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants