]> git.ipfire.org Git - thirdparty/valgrind.git/commit
iropt-test: Run tests with and without constant folding. master
authorFlorian Krohm <flo2030@eich-krohm.de>
Fri, 22 Aug 2025 17:48:23 +0000 (17:48 +0000)
committerFlorian Krohm <flo2030@eich-krohm.de>
Fri, 22 Aug 2025 17:48:23 +0000 (17:48 +0000)
commit25b9956679338c2150a7ea089be53e1f6a6f3150
tree4be92d1a5590cec6000d0687347446567bd7d67e
parent3e8790f5af6b4d7f0daf3d40c2abbae990f29d3e
iropt-test: Run tests with and without constant folding.

That way we can check whether the result of constant folding matches
the value computed by the insn sequence that is generated to implement
a specific IROp. Bugs were found for all architectures. s390 has been
fixed. The other architectures are currently disabled.

- irops.tab modified to enable only those IROps that are actually
  implemented for a given architecture. Architectures considered here
  are amd64, x86, ppc32, ppc64be/le
- IRICB_iropt_payload amended to store both the folded and unfolded
  result
- In valgrind_execute_test call IR injection twice: with and without
  constant folding enabled (--vex-iropt-fold-expr=yes/no)
VEX/priv/ir_inject.c
VEX/pub/libvex.h
none/tests/iropt-test/irops.tab
none/tests/iropt-test/main.c
none/tests/iropt-test/valgrind.c
none/tests/iropt-test/vtest.h