| Summary: | s390: Sqrt32Fx4 -- cannot reduce tree | ||
|---|---|---|---|
| Product: | [Developer tools] valgrind | Reporter: | Andreas Arnez <arnez> |
| Component: | vex | Assignee: | Andreas Arnez <arnez> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | cjvolzka |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Other | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | Patch with fixes and test cases | ||
Assigning to myself. I have a fix, but before attaching it here, I'd like to finish a test case that covers this. Created attachment 154601 [details]
Patch with fixes and test cases
This patch series includes a fix for this issue. It also fixes the implementation of some other vector floating point instructions:
* VFMA, VFMS, VFNMA, and VFNMS for 128-bit FP (which were unimplemented)
* VFCH and VFCHE (whose implementations were swapped)
* VFMIN and VFMAX (which clobbered the condition code)
Additionally, the series includes a test case that covers all these issues.
Pushed all of the above. |
It has been seen that an application running under Valgrind on IBM Z Systems crashes with this message: Sqrt32Fx4(And32(Sub32(0x4:I32,t178),0x3:I32),LDbe:V128(t28)) vex: the `impossible' happened: s390_isel_vec_expr: cannot reduce tree ... Looking at the source, it seems that Sqrt32Fx4 is not implemented correctly.