Index: Makefile.config.in =================================================================== --- Makefile.config.in +++ Makefile.config.in @@ -139,6 +139,17 @@ TEST_TARGET_FLAGS += -mthumb endif +ifeq ($(ARCH),XCore) +ifndef XCORE_TARGET_NEEDS_MEMORY +# The default memory for all tests is 32MB (rather than the usual default of 64K). +# (32MB target memory requires ~300MB of host memory) +XCORE_TARGET_NEEDS_MEMORY := 32 +endif +XCORE_TARGET_FLAGS := --target=xcore -fcommon -fexceptions -mcmodel=large +XCORE_TARGET_FLAGS += -Wl,-target=XS1-L1,-Xmapper,--defsymbol,-Xmapper,CmdLineWords=400 +XCORE_TARGET_FLAGS += -Wl,-Xmapper,--image-size,-Xmapper,$$(($(XCORE_TARGET_NEEDS_MEMORY) * 0x100000)),-Xmapper,--image-base,-Xmapper,$$(($(XCORE_TARGET_NEEDS_MEMORY) * 0x100000)) +endif + # PowerPC/Linux needs -ffp-contract=off so that: # The outputs can be compared to gcc. # The outputs match the reference outputs. Index: Makefile.programs =================================================================== --- Makefile.programs +++ Makefile.programs @@ -67,8 +67,13 @@ # timeout. This is overridable on the commandline or in tests makefiles. # ifndef RUNTIMELIMIT +ifeq ($(ARCH),XCore) + # 1 hours + RUNTIMELIMIT := 3600 +else RUNTIMELIMIT := 500 endif +endif # If the program specified a REFERENCE_OUTPUT_FILE, they obviously want to # USE_REFERENCE_OUTPUT. Index: Makefile.tests =================================================================== --- Makefile.tests +++ Makefile.tests @@ -23,6 +23,10 @@ # TARGET_FLAGS in the TEST.* makefiles doesn't work out. X_TARGET_FLAGS = $(TARGET_FLAGS) $(TEST_TARGET_FLAGS) +ifeq ($(ARCH),XCore) +X_TARGET_FLAGS += $(XCORE_TARGET_FLAGS) +endif + STATS = -stats -time-passes .PHONY: clean default Index: MultiSource/Applications/JM/ldecod/Makefile =================================================================== --- MultiSource/Applications/JM/ldecod/Makefile +++ MultiSource/Applications/JM/ldecod/Makefile @@ -5,6 +5,10 @@ RUN_OPTIONS = -i $(PROJ_SRC_DIR)/data/test.264 -o Output/test_dec.yuv -r $(PROJ_SRC_DIR)/data/test_rec.yuv +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif + include ../../../Makefile.multisrc clean:: Index: MultiSource/Applications/lua/Makefile =================================================================== --- MultiSource/Applications/lua/Makefile +++ MultiSource/Applications/lua/Makefile @@ -6,7 +6,10 @@ loslib.c ltablib.c lstrlib.c loadlib.c linit.c lua.c LDFLAGS += -lm -ifneq ($(ARCH),XCore) + +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 128 +else CPPFLAGS += -DLUA_USE_POSIX endif Index: MultiSource/Applications/minisat/Makefile =================================================================== --- MultiSource/Applications/minisat/Makefile +++ MultiSource/Applications/minisat/Makefile @@ -9,6 +9,9 @@ else ifdef LARGE_PROBLEM_SIZE RUN_OPTIONS = -verbosity=0 $(PROJ_SRC_DIR)/long.cnf +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif else RUN_OPTIONS = -verbosity=0 $(PROJ_SRC_DIR)/short.cnf endif Index: MultiSource/Applications/spiff/Makefile =================================================================== --- MultiSource/Applications/spiff/Makefile +++ MultiSource/Applications/spiff/Makefile @@ -9,5 +9,11 @@ #RUN_OPTIONS = ./one ./two # you get the idea... +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +XCORE_TARGET_NEEDS_MEMORY = 1024 +endif +endif + include ../../Makefile.multisrc Index: MultiSource/Benchmarks/ASCI_Purple/SMG2000/Makefile =================================================================== --- MultiSource/Benchmarks/ASCI_Purple/SMG2000/Makefile +++ MultiSource/Benchmarks/ASCI_Purple/SMG2000/Makefile @@ -12,6 +12,9 @@ RUN_OPTIONS ="-n 30 15 30 -c 0.1 1.0 10.0" else RUN_OPTIONS ="-n 100 40 100 -c 0.1 1.0 10.0" +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 256 +endif endif include ../../../Makefile.multisrc Index: MultiSource/Benchmarks/ASC_Sequoia/AMGmk/Makefile =================================================================== --- MultiSource/Benchmarks/ASC_Sequoia/AMGmk/Makefile +++ MultiSource/Benchmarks/ASC_Sequoia/AMGmk/Makefile @@ -5,4 +5,11 @@ LIBS += -lm LDFLAGS += -lm +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +# XCore takes over 1 hour. +RUNTIMELIMIT:=7200 +endif +endif + include ../../../Makefile.multisrc Index: MultiSource/Benchmarks/ASC_Sequoia/CrystalMk/Makefile =================================================================== --- MultiSource/Benchmarks/ASC_Sequoia/CrystalMk/Makefile +++ MultiSource/Benchmarks/ASC_Sequoia/CrystalMk/Makefile @@ -5,4 +5,11 @@ LIBS += -lm LDFLAGS += -lm +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif +endif + include ../../../Makefile.multisrc Index: MultiSource/Benchmarks/Bullet/Makefile =================================================================== --- MultiSource/Benchmarks/Bullet/Makefile +++ MultiSource/Benchmarks/Bullet/Makefile @@ -3,8 +3,13 @@ CPPFLAGS += -I$(PROJ_SRC_DIR)/include -DNO_TIME LDFLAGS = -lstdc++ -lm +ifeq ($(ARCH),XCore) +# Use default RUNTIMELIMIT for the XCore. +XCORE_TARGET_NEEDS_MEMORY := 64 +else # This test can take more than the default 500s timeout on Thumb1 RUNTIMELIMIT:=1000 +endif include $(LEVEL)/Makefile.config Index: MultiSource/Benchmarks/Fhourstones-3.1/Makefile =================================================================== --- MultiSource/Benchmarks/Fhourstones-3.1/Makefile +++ MultiSource/Benchmarks/Fhourstones-3.1/Makefile @@ -11,4 +11,8 @@ STDIN_FILENAME = $(PROJ_SRC_DIR)/inputs endif +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif + include ../../Makefile.multisrc Index: MultiSource/Benchmarks/NPB-serial/is/Makefile =================================================================== --- MultiSource/Benchmarks/NPB-serial/is/Makefile +++ MultiSource/Benchmarks/NPB-serial/is/Makefile @@ -5,6 +5,10 @@ ifdef SMALL_PROBLEM_SIZE CPPFLAGS = -DSMALL_PROBLEM_SIZE +else +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 512 +endif endif include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/Olden/health/Makefile =================================================================== --- MultiSource/Benchmarks/Olden/health/Makefile +++ MultiSource/Benchmarks/Olden/health/Makefile @@ -13,6 +13,9 @@ RUN_OPTIONS = 8 15 1 else RUN_OPTIONS = 9 20 1 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif endif endif Index: MultiSource/Benchmarks/Olden/perimeter/Makefile =================================================================== --- MultiSource/Benchmarks/Olden/perimeter/Makefile +++ MultiSource/Benchmarks/Olden/perimeter/Makefile @@ -10,6 +10,9 @@ RUN_OPTIONS = 9 else RUN_OPTIONS = 10 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif endif endif Index: MultiSource/Benchmarks/Olden/treeadd/Makefile =================================================================== --- MultiSource/Benchmarks/Olden/treeadd/Makefile +++ MultiSource/Benchmarks/Olden/treeadd/Makefile @@ -8,6 +8,9 @@ RUN_OPTIONS = 20 else RUN_OPTIONS = 22 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 128 +endif endif include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/Olden/tsp/Makefile =================================================================== --- MultiSource/Benchmarks/Olden/tsp/Makefile +++ MultiSource/Benchmarks/Olden/tsp/Makefile @@ -10,6 +10,9 @@ RUN_OPTIONS = 102400 else RUN_OPTIONS = 1024000 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif endif endif Index: MultiSource/Benchmarks/Olden/voronoi/Makefile =================================================================== --- MultiSource/Benchmarks/Olden/voronoi/Makefile +++ MultiSource/Benchmarks/Olden/voronoi/Makefile @@ -12,6 +12,9 @@ RUN_OPTIONS = 10000 20 32 7 else RUN_OPTIONS = 100000 20 32 7 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif endif endif HASH_PROGRAM_OUTPUT = 1 Index: MultiSource/Benchmarks/SciMark2-C/Makefile =================================================================== --- MultiSource/Benchmarks/SciMark2-C/Makefile +++ MultiSource/Benchmarks/SciMark2-C/Makefile @@ -3,8 +3,16 @@ CPPFLAGS = LDFLAGS = -lm +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +# XCore target takes over 9hours to complete a medium sized problem. +RUNTIMELIMIT := 50000 +# Ignore 'LARGE_PROBLEM_SIZE' requests +endif +else ifdef LARGE_PROBLEM_SIZE RUN_OPTIONS = -large endif +endif include ../../Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/ControlFlow-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/ControlFlow-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/ControlFlow-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 2325 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/ControlLoops-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/ControlLoops-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/ControlLoops-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 1640 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/Expansion-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/Expansion-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/Expansion-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 4160 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/GlobalDataFlow-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/GlobalDataFlow-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/GlobalDataFlow-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 3450 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/InductionVariable-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/InductionVariable-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/InductionVariable-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 9100 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/LinearDependence-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/LinearDependence-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/LinearDependence-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 3570 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/LoopRerolling-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/LoopRerolling-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/LoopRerolling-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 5260 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/NodeSplitting-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/NodeSplitting-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/NodeSplitting-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 10000 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/NodeSplitting-flt/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/NodeSplitting-flt/Makefile +++ MultiSource/Benchmarks/TSVC/NodeSplitting-flt/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 10000 5 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/TSVC/StatementReordering-dbl/Makefile =================================================================== --- MultiSource/Benchmarks/TSVC/StatementReordering-dbl/Makefile +++ MultiSource/Benchmarks/TSVC/StatementReordering-dbl/Makefile @@ -4,5 +4,11 @@ LDFLAGS = -lm CFLAGS += -std=gnu99 RUN_OPTIONS = 20000 14 + +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc Index: MultiSource/Benchmarks/Trimaran/netbench-crc/Makefile =================================================================== --- MultiSource/Benchmarks/Trimaran/netbench-crc/Makefile +++ MultiSource/Benchmarks/Trimaran/netbench-crc/Makefile @@ -8,6 +8,9 @@ RUN_OPTIONS = 1000 else RUN_OPTIONS = 12000 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 256 +endif endif endif Index: MultiSource/Benchmarks/mafft/Makefile =================================================================== --- MultiSource/Benchmarks/mafft/Makefile +++ MultiSource/Benchmarks/mafft/Makefile @@ -12,6 +12,13 @@ LDFLAGS = -lm FP_TOLERANCE = 0.00001 HASH_PROGRAM_OUTPUT = 1 + +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 256 +# XCore takes ~1.5 hours. +RUNTIMELIMIT:=7200 +endif + include $(LEVEL)/MultiSource/Makefile.multisrc clean:: Index: MultiSource/Benchmarks/nbench/Makefile =================================================================== --- MultiSource/Benchmarks/nbench/Makefile +++ MultiSource/Benchmarks/nbench/Makefile @@ -6,8 +6,13 @@ include ../../Makefile.multisrc +ifeq ($(ARCH),XCore) +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +else # This test can take more than the default 500s timeout at -O0. RUNTIMELIMIT:=750 +endif # Always copy NNET.DAT so it's available with SRCDIR != OBJDIR builds. # FIXME: Hack Index: SingleSource/Benchmarks/CoyoteBench/Makefile =================================================================== --- SingleSource/Benchmarks/CoyoteBench/Makefile +++ SingleSource/Benchmarks/CoyoteBench/Makefile @@ -1,5 +1,13 @@ LEVEL = ../../.. LDFLAGS += -lm -lstdc++ +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +XCORE_TARGET_NEEDS_MEMORY := 128 +# XCore takes ~1.25 hour. +RUNTIMELIMIT:=7200 +endif +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Misc-C++/Large/Makefile =================================================================== --- SingleSource/Benchmarks/Misc-C++/Large/Makefile +++ SingleSource/Benchmarks/Misc-C++/Large/Makefile @@ -4,4 +4,11 @@ FP_ABSTOLERANCE := 0.01 HASH_PROGRAM_OUTPUT := 1 +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +# XCore takes ~1 hour. +RUNTIMELIMIT:=7200 +endif +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Misc-C++/Makefile =================================================================== --- SingleSource/Benchmarks/Misc-C++/Makefile +++ SingleSource/Benchmarks/Misc-C++/Makefile @@ -4,4 +4,10 @@ LIBS = -lstdc++ FP_ABSTOLERANCE := 0.01 +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +XCORE_TARGET_NEEDS_MEMORY := 128 +endif +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Misc/Makefile =================================================================== --- SingleSource/Benchmarks/Misc/Makefile +++ SingleSource/Benchmarks/Misc/Makefile @@ -15,4 +15,11 @@ RUNTIMELIMIT := 2000 endif +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +# XCore takes over 2 hours. +RUNTIMELIMIT:=10800 +endif +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/2mm/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/2mm/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/2mm/Makefile @@ -6,10 +6,16 @@ ifdef SMALL_PROBLEM_SIZE CFLAGS += -DSMALL_DATASET +else +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif endif ifeq ($(ARCH),Mips) RUNTIMELIMIT := 2000 +else ifeq ($(ARCH),XCore) +# Use default RUNTIMELIMIT for the XCore. else RUNTIMELIMIT := 1000 endif Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/3mm/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/3mm/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/3mm/Makefile @@ -6,10 +6,16 @@ ifdef SMALL_PROBLEM_SIZE CFLAGS += -DSMALL_DATASET +else +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif endif ifeq ($(ARCH),Mips) RUNTIMELIMIT := 2000 +else ifeq ($(ARCH),XCore) +# Use default RUNTIMELIMIT for the XCore. else RUNTIMELIMIT := 1000 endif Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/atax/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/atax/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/atax/Makefile @@ -6,5 +6,9 @@ HASH_PROGRAM_OUTPUT = 1 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 128 +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/bicg/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/bicg/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/bicg/Makefile @@ -6,5 +6,9 @@ HASH_PROGRAM_OUTPUT = 1 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 128 +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/doitgen/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/doitgen/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/doitgen/Makefile @@ -6,6 +6,10 @@ ifdef SMALL_PROBLEM_SIZE CFLAGS += -DSMALL_DATASET +else +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 64 +endif endif HASH_PROGRAM_OUTPUT = 1 Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/gemver/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/gemver/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/gemver/Makefile @@ -6,5 +6,9 @@ HASH_PROGRAM_OUTPUT = 1 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 128 +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/gesummv/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/gesummv/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/gesummv/Makefile @@ -6,6 +6,10 @@ ifdef SMALL_PROBLEM_SIZE CFLAGS += -DSMALL_DATASET +else +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 256 +endif endif HASH_PROGRAM_OUTPUT = 1 Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/mvt/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/mvt/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/mvt/Makefile @@ -6,5 +6,9 @@ HASH_PROGRAM_OUTPUT = 1 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 128 +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Polybench/linear-algebra/kernels/trisolv/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/kernels/trisolv/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/kernels/trisolv/Makefile @@ -6,5 +6,9 @@ HASH_PROGRAM_OUTPUT = 1 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 128 +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Polybench/linear-algebra/solvers/durbin/Makefile =================================================================== --- SingleSource/Benchmarks/Polybench/linear-algebra/solvers/durbin/Makefile +++ SingleSource/Benchmarks/Polybench/linear-algebra/solvers/durbin/Makefile @@ -6,5 +6,9 @@ HASH_PROGRAM_OUTPUT = 1 +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 256 +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Shootout-C++/Makefile =================================================================== --- SingleSource/Benchmarks/Shootout-C++/Makefile +++ SingleSource/Benchmarks/Shootout-C++/Makefile @@ -5,5 +5,13 @@ DIRS=EH +ifeq ($(ARCH),XCore) +ifndef SMALL_PROBLEM_SIZE +XCORE_TARGET_NEEDS_MEMORY := 256 +# XCore takes over 2 hour. +RUNTIMELIMIT:=10800 +endif +endif + LDFLAGS += -lstdc++ include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/Shootout/Makefile =================================================================== --- SingleSource/Benchmarks/Shootout/Makefile +++ SingleSource/Benchmarks/Shootout/Makefile @@ -1,4 +1,8 @@ LEVEL = ../../.. LDFLAGS += -lm +ifeq ($(ARCH),XCore) +XCORE_TARGET_NEEDS_MEMORY := 256 +endif + include $(LEVEL)/SingleSource/Makefile.singlesrc Index: SingleSource/Benchmarks/SmallPT/Makefile =================================================================== --- SingleSource/Benchmarks/SmallPT/Makefile +++ SingleSource/Benchmarks/SmallPT/Makefile @@ -2,8 +2,13 @@ LDFLAGS += -lm -lstdc++ FP_TOLERANCE := 0.001 +ifeq ($(ARCH),XCore) +# XCore takes over 2 hours +RUNTIMELIMIT:=10800 +else # This test can take more than the default 500s timeout at -O0. RUNTIMELIMIT:=1200 +endif include $(LEVEL)/Makefile.config Index: SingleSource/UnitTests/Makefile =================================================================== --- SingleSource/UnitTests/Makefile +++ SingleSource/UnitTests/Makefile @@ -43,6 +43,9 @@ PROGRAMS_TO_SKIP += AtomicOps # XCore does not support init_priority attribute PROGRAMS_TO_SKIP += initp1 +# 2007-04-25-weak contains a branch to zero. +# XCore BLR instruction can only branch 21bits, hence restrict memory to 20bits viz: 0x100000->0x1fffff +XCORE_TARGET_NEEDS_MEMORY := 1 endif LDFLAGS += -lstdc++