VirtualBox

Ignore:
Timestamp:
Aug 21, 2024 7:37:51 AM (5 months ago)
Author:
vboxsync
Message:

Disassembler/testcase: Add tstDisasmArmv8-1 testcase for testing the ARMv8 disassembler by checking the disassembled output against the original source for semantic equality, bugref:10394

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Disassembler/testcase/Makefile.kmk

    r99040 r105748  
    5959        $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) \
    6060        $(LIB_RUNTIME)
     61
     62
     63 ifeq ($(KBUILD_TARGET_ARCH), arm64)
     64  #
     65  # tstDisasmArmv8-1 assembly files -> .cpp
     66  #
     67  TST_DISASM_ARMV8_1_FILE = $(tstDisasmArmv8-1_0_OUTDIR)/tstDisasmArmv8-1-asm.cpp
     68  TST_DISASM_ARMV8_1_SOURCES := \
     69        tstDisasmArmv8_1=tstDisasmArmv8-1-asm.S
     70
     71  TST_DISASM_ARMV8_1_NAMES := $(foreach cert,$(VBOX_SVC_CERTS),$(firstword $(subst =,$(SP),$(cert))))
     72  TST_DISASM_ARMV8_1_PATH_SOURCES := $(PATH_SUB_CURRENT)
     73
     74  $$(TST_DISASM_ARMV8_1_FILE): $(MAKEFILE_CURRENT) \
     75                $(foreach source,$(TST_DISASM_ARMV8_1_SOURCES),$(TST_DISASM_ARMV8_1_PATH_SOURCES)/$(lastword $(subst =,$(SP),$(source)))) \
     76                $(VBOX_BIN2C) \
     77                | $$(dir $$@)
     78        $(QUIET)$(RM) -f -- $@
     79        $(QUIET)$(APPEND) -n "$@" \
     80                '' \
     81                '#include "tstDisasmArmv8-1-tests.h"' \
     82                ''
     83        $(foreach source,$(TST_DISASM_ARMV8_1_SOURCES), $(NLTAB)$(VBOX_BIN2C) -ascii --append \
     84                "$(firstword $(subst =,$(SP),$(source)))" \
     85                "$(TST_DISASM_ARMV8_1_PATH_SOURCES)/$(lastword $(subst =,$(SP),$(source)))" \
     86                "$@")
     87
     88  OTHER_CLEAN += $(TST_DISASM_ARMV8_1_FILE)
     89
     90  PROGRAMS += tstDisasmArmv8-1
     91  tstDisasmArmv8-1_TEMPLATE   = VBoxR3TstExe
     92  tstDisasmArmv8-1_DEFS       = IN_DIS
     93  tstDisasmArmv8-1_INCS = \
     94        .
     95  tstDisasmArmv8-1_SOURCES    = \
     96        $(TST_DISASM_ARMV8_1_FILE) \
     97        tstDisasmArmv8-1-asm.S \
     98        tstDisasmArmv8-1.cpp
     99  tstDisasmArmv8-1_LIBS       = \
     100        $(PATH_STAGE_LIB)/DisasmR3$(VBOX_SUFF_LIB) \
     101        $(LIB_RUNTIME)
     102 endif
    61103
    62104 # Tests that will be build, disassembled and re-build from disassembly.
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette