https://bugs.kde.org/show_bug.cgi?id=495817

--- Comment #6 from Florian Krohm <flo2...@eich-krohm.de> ---
Created attachment 176372
  --> https://bugs.kde.org/attachment.cgi?id=176372&action=edit
check for spec. exceptions / updates asserts

This patch is fall-out from working on fixing the disassembly for the vector
insns.

Finding disassembly that does not match objdump output is done in an automated
manner.
Now: most vector insns generate a specification exception when a mask field
takes on certain reserved values.
That means the testcase generator must observe these constraints.
So while teaching the generator these constraints I can as well add code to
detect those situations when
building VEX IR. (In the end we want to generate a SIGILL for a specification
exception).

Specifically: this patch
1) replaces vassert with s390_insn_assert where appropriate
2) adds missing s390_insn_asserts (many)
3) removes incorrect s390_insn_asserts (few)
4) checks availability of vector opcodes based on hardware capabilities
   and issues an emulation failure if opcode is not available
5) For s390_vr_get_type and s390_v3_get_ftype remove the mask check as
   it has already been asserted earlier. Add a vassert for the anxious :)
6) For s390_vr_get_n_elem, add a vassert (the mask was already checked
   earlier). The function used to return 0 for an out-of-range mask
   which would have made s390_vector_fp_mulAddOrSub to create
   side-effect-free VEX IR.

This patch depends on the patch from
https://bugs.kde.org/show_bug.cgi?id=496950
being applied.
No regtest failures.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to