| S390X_SRC=$(SRC_PATH)/tests/tcg/s390x |
| VPATH+=$(S390X_SRC) |
| CFLAGS+=-march=zEC12 -m64 |
| |
| %.o: %.c |
| $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c $< -o $@ |
| |
| config-cc.mak: Makefile |
| $(quiet-@)( \ |
| $(call cc-option,-march=z14, CROSS_CC_HAS_Z14); \ |
| $(call cc-option,-march=z15, CROSS_CC_HAS_Z15)) 3> config-cc.mak |
| -include config-cc.mak |
| |
| TESTS+=hello-s390x |
| TESTS+=csst |
| TESTS+=ipm |
| TESTS+=exrl-trt |
| TESTS+=exrl-trtr |
| TESTS+=pack |
| TESTS+=mie3-compl |
| TESTS+=mie3-mvcrl |
| TESTS+=mie3-sel |
| TESTS+=mvo |
| TESTS+=mvc |
| TESTS+=shift |
| TESTS+=trap |
| TESTS+=signals-s390x |
| TESTS+=branch-relative-long |
| TESTS+=noexec |
| TESTS+=div |
| TESTS+=clst |
| TESTS+=long-double |
| TESTS+=cdsg |
| TESTS+=chrl |
| TESTS+=rxsbg |
| TESTS+=ex-relative-long |
| TESTS+=ex-branch |
| TESTS+=mxdb |
| TESTS+=epsw |
| TESTS+=larl |
| TESTS+=mdeb |
| TESTS+=cgebra |
| TESTS+=clgebr |
| TESTS+=clc |
| TESTS+=laalg |
| TESTS+=add-logical-with-carry |
| |
| cdsg: CFLAGS+=-pthread |
| cdsg: LDFLAGS+=-pthread |
| |
| rxsbg: CFLAGS+=-O2 |
| |
| cgebra: LDFLAGS+=-lm |
| clgebr: LDFLAGS+=-lm |
| |
| include $(S390X_SRC)/pgm-specification.mak |
| $(PGM_SPECIFICATION_TESTS): pgm-specification-user.o |
| $(PGM_SPECIFICATION_TESTS): LDFLAGS+=pgm-specification-user.o |
| TESTS += $(PGM_SPECIFICATION_TESTS) |
| |
| Z13_TESTS=vistr |
| Z13_TESTS+=lcbb |
| Z13_TESTS+=locfhr |
| Z13_TESTS+=vcksm |
| Z13_TESTS+=vstl |
| Z13_TESTS+=vrep |
| Z13_TESTS+=precise-smc-user |
| $(Z13_TESTS): CFLAGS+=-march=z13 -O2 |
| TESTS+=$(Z13_TESTS) |
| |
| ifneq ($(CROSS_CC_HAS_Z14),) |
| Z14_TESTS=vfminmax |
| vfminmax: LDFLAGS+=-lm |
| $(Z14_TESTS): CFLAGS+=-march=z14 -O2 |
| TESTS+=$(Z14_TESTS) |
| endif |
| |
| ifneq ($(CROSS_CC_HAS_Z15),) |
| Z15_TESTS=vxeh2_vs |
| Z15_TESTS+=vxeh2_vcvt |
| Z15_TESTS+=vxeh2_vlstr |
| Z15_TESTS+=vxeh2_vstrs |
| $(Z15_TESTS): CFLAGS+=-march=z15 -O2 |
| TESTS+=$(Z15_TESTS) |
| endif |
| |
| ifneq ($(GDB),) |
| GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py |
| |
| run-gdbstub-signals-s390x: signals-s390x |
| $(call run-test, $@, $(GDB_SCRIPT) \ |
| --gdb $(GDB) \ |
| --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ |
| --bin $< --test $(S390X_SRC)/gdbstub/test-signals-s390x.py, \ |
| mixing signals and debugging) |
| |
| hello-s390x-asm: CFLAGS+=-nostdlib |
| |
| run-gdbstub-svc: hello-s390x-asm |
| $(call run-test, $@, $(GDB_SCRIPT) \ |
| --gdb $(GDB) \ |
| --qemu $(QEMU) --qargs "$(QEMU_OPTS)" \ |
| --bin $< --test $(S390X_SRC)/gdbstub/test-svc.py, \ |
| single-stepping svc) |
| |
| # Skip for now until vx registers sorted out |
| run-gdbstub-registers: |
| $(call skip-test, $<, "BROKEN reading VX registers") |
| |
| EXTRA_RUNS += run-gdbstub-signals-s390x run-gdbstub-svc |
| endif |
| |
| # MVX versions of sha512 |
| sha512-mvx: CFLAGS=-march=z13 -mvx -O3 |
| sha512-mvx: sha512.c |
| $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS) |
| |
| TESTS+=sha512-mvx |