Rmove ported instruction tests - #276
Draft
bbiiggppiigg wants to merge 2 commits into
Draft
Conversation
The bg_gcc, bg_g++, and bg_gfortran compilers no longer have any platform (the bluegenep platforms were removed from the specification some time ago), but they still had compiler_opt_trans facts. That trips the "not defined as a compiler, but has optimization translation defined" sanity check in write_tuples, which makes it impossible to regenerate the platform directories from the current specification: gprolog halts before writing any tuples. Remove the three dead compilers from the low/high/max optimization translation lists and regenerate the platform directories (gprolog 1.5.0, Makefile.genspec gen-clean gen-all). Note on regeneration drift: the checked-in tuples.gz files were stale relative to the current specification (they still contained the removed ppc32_linux/ppc32_bgp*/ppc64_bgq* platform metadata), so regenerating rewrites them. All harness-driving generated files (test_info_new.gen.C, cmake-mutatees.txt, group boilerplate) reproduce byte-for-byte from the current spec; the only other change is generator-emitted trailing whitespace in cmake-mutators.txt that had been hand-stripped in the checked-in copies. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
These ten InstructionAPI tests decode fixed in-memory byte buffers and
never used a mutatee or attached to a process, so they have been ported
to the dyninst repository's integration test tree
(tests/integration/InstructionAPI/decoder/) where they run from the
build tree via ctest on any host architecture:
- power_decode.C, power_cft.C -> decoder/ppc64le/{decode,branches}.cpp
- aarch64_cft.C -> decoder/aarch64/cft.cpp
- aarch64_decode_ldst.C -> decoder/aarch64/ldst.cpp
- aarch64_simd.C -> decoder/aarch64/simd.cpp
- fucompp.C -> decoder/x86/fucompp.cpp
- mov_size_details.C -> decoder/x86/mov_size_details.cpp
- test_instruction_farcall.C -> decoder/x86/farcall.cpp
- test_instruction_bind_eval.C -> decoder/x86/bind_eval.cpp
- test_instruction_read_write.C -> decoder/x86/read_write.cpp
Remove the test sources, their blocks in
src/specification/spec-grouped.pl, and regenerate the platform
directories (gprolog 1.5.0, Makefile.genspec gen-clean gen-all). The
regenerated diffs contain exactly the removal of these tests from
test_info_new.gen.C and cmake-mutators.txt on every platform.
The remaining instruction-module tests are aarch64_decode.C (an empty
stub whose executeTest() just returns PASSED) and
test_instruction_profile.C (decodes the host's libc via SymtabAPI, so
it depends on external state and stays here for now).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.