Skip to content
Snippets Groups Projects
Commit 4458139e authored by Filippo Cremonese's avatar Filippo Cremonese
Browse files

Add spec component

parent 85646794
No related branches found
No related tags found
No related merge requests found
Showing
with 317 additions and 1 deletion
......@@ -22,6 +22,7 @@ extra_gcc_configure_options:
- --disable-libssp
- --disable-shared
dynamic: "0"
spec: true
#@ end
......
......@@ -18,6 +18,8 @@ extra_gcc_configure_options:
- --disable-libssp
- --disable-shared
dynamic: "0"
spec: true
#@ end
---
......
......@@ -17,6 +17,8 @@ extra_gcc_configure_options:
- --disable-libssp
- --disable-shared
dynamic: "0"
spec: true
#@ end
---
......
......@@ -19,6 +19,8 @@ extra_gcc_configure_options:
- --disable-libssp
- --disable-shared
dynamic: "0"
spec: true
#@ end
---
......
#@ load("@ytt:data", "data")
#@ load("/lib/optimization_flavors.lib.yml", "libc_optimization_flavors")
#@ load("/lib/fn_args.lib.yml", "mandatory")
#@ load("/global_options.lib.yml", "options")
#@ spec_archive_name = "spec2006_int_fp.tar.gz"
#@ spec_archive_url = data.values.nonredistributable_base_url + spec_archive_name
#! Flags for runspec
#@ spec_flags = "int"
#@ link_flags = "-static"
---
#@ def types():
- native
- qemu
- revng
- revngisolated
#@ end
#@yaml/text-templated-strings
---
#@ def create_spec_components(
#@ triple=mandatory,
#@ toolchain_name=mandatory,
#@ ):
#@ for build_type in types():
#@ for step in ["make", "use"]:
toolchain/(@= toolchain_name @)/spec/(@= build_type @)/(@= step @):
builds:
#@ for flavor, f_options in libc_optimization_flavors.items():
(@= flavor @):
configure: |
mkdir -p "$BUILD_DIR"
extract.sh --into "$BUILD_DIR" "(@= spec_archive_url @)"
cd "$BUILD_DIR";
SPEC_INSTALL_NOCHECK=1 ./install.sh -d "$BUILD_URL" -f
(@ if step == "make": @)
cd "$BUILD_DIR"
rm -rf config/
cp -ar "$ORCHESTRA_DOTDIR/support/spec-config/" config/
sed -i 's|C\(XX\)\?OPTIMIZE\s*=\s*|\0(@= f_options @) (@= link_flags @) |' config/gcc-base.cfg)
(@- end @)
install: |
cd "$BUILD_DIR"
source shrc
(@ if step == "use": @)
cp -a "$ORCHESTRA_ROOT/(@= triple @)/(@= triple @)-(@= build_type @)-int-bundle.cpu2006bundle.bz2" "$BUILD_DIR/"
(@ else: @)
rm -f "$BUILD_DIR/(@= triple @)-(@= build_type @)-int-bundle.cpu2006bundle.bz2"
(@ end @)
yes | runspec --config="(@= triple @)-(@= build_type @).cfg" --(@= step @)_bundle "(@= triple @)-(@= build_type @)-int-bundle" (@= spec_flags @)
(@ if step == "make": @)
mkdir -p "${DESTDIR}${ORCHESTRA_ROOT}/(@= triple @)/"
cp -a "$BUILD_DIR/(@= triple @)-(@= build_type @)-int-bundle.cpu2006bundle.bz2" "${DESTDIR}${ORCHESTRA_ROOT}/(@= triple @)/")
(@ else: @)
cd "$BUILD_DIR"
mkdir -p "${DESTDIR}${ORCHESTRA_ROOT}/(@= triple @)/"
tar caf "${DESTDIR}${ORCHESTRA_ROOT}/(@= triple @)/(@= triple @)-(@= build_type @)-int-bundle-results.tar.gz" --owner=0 --group=0 result/)
(@- end @)
dependencies:
#@ if/end step == "use":
- toolchain/(@= toolchain_name @)/spec/(@= build_type @)/make@(@= flavor @)
#@ if/end step == "use" and build_type == "qemu":
- qemu
#@ if/end step == "make":
- toolchain/(@= toolchain_name @)/gcc
#@ if/end step == "make" and build_type in ["revng", "revng-optimized"]:
- revng
#@ end
#@ end
#@ end
#@ end
#@ load("@ytt:template", "template")
#@ load("/lib/fn_args.lib.yml", "mandatory")
#@ load("/components/toolchain/lib/linux_headers.lib.yml", "create_linux_headers_component")
......@@ -8,6 +10,7 @@
#@ load("/components/toolchain/lib/uclibc.lib.yml", "create_uclibc_component")
#@ load("/components/toolchain/lib/coreutils.lib.yml", "create_coreutils_component")
#@ load("/components/toolchain/lib/mingw64.lib.yml", "create_mingw64_component")
#@ load("/components/toolchain/lib/spec.lib.yml", "create_spec_components")
#@yaml/text-templated-strings
---
......@@ -27,7 +30,8 @@
#@ mingw64_version=None,
#@ extra_gcc_configure_options=None,
#@ extra_gcc_make_variables="",
#@ dynamic=None
#@ dynamic=None,
#@ spec=False,
#@ ):
#@ if/end binutils_version:
......@@ -54,4 +58,7 @@
#@ if/end uclibc_version:
(@= "toolchain/" + toolchain_name + "/uclibc" @): #@ create_uclibc_component(triple=triple, toolchain_name=toolchain_name, uclibc_version=uclibc_version, uclibc_arch_name=uclibc_arch_name, gcc_version=gcc_version, binutils_version=binutils_version)
#@ if/end spec:
_: #@ template.replace(create_spec_components(triple=triple, toolchain_name=toolchain_name))
#@ end
......@@ -2,6 +2,7 @@
---
parallelism: "16"
build_from_source: []
nonredistributable_base_url: "https://dummydomain.com/nonredistributable/"
paths:
#! orchestra_root: /absolute/path/only
#! source_archives: /absolute/path/only
......
CC = armv7a-hardfloat-linux-uclibceabi-gcc -fsigned-char
CLD = armv7a-hardfloat-linux-uclibceabi-gcc -fsigned-char -static
CXX = armv7a-hardfloat-linux-uclibceabi-g++ -fsigned-char -pthread
CXXLD = armv7a-hardfloat-linux-uclibceabi-g++ -fsigned-char -pthread -static
include: gcc-base.cfg
400.perlbench=default=default=default:
CPORTABILITY = -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE -DI_FCNTL -DSPEC_CPU_NEED_TIME_H -DI_TIME
ext = armv7a-hardfloat-linux-uclibceabi-gcc-static-native
include: armv7a-hardfloat-linux-uclibceabi-base.cfg
ext = armv7a-hardfloat-linux-uclibceabi-gcc-static-qemu
use_submit_for_speed = 1
submit = qemu-arm $command
include: armv7a-hardfloat-linux-uclibceabi-base.cfg
ext = armv7a-hardfloat-linux-uclibceabi-gcc-static-revng
strict_rundir_verify = 0
CC = armv7a-hardfloat-linux-uclibceabi-gcc
CLD = revng cc -O2 -- armv7a-hardfloat-linux-uclibceabi-gcc -static
CXX = armv7a-hardfloat-linux-uclibceabi-g++
CXXLD = revng cc -O2 -- armv7a-hardfloat-linux-uclibceabi-g++ -static
include: gcc-base.cfg
400.perlbench=default=default=default:
CPORTABILITY = -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE -DI_FCNTL -DSPEC_CPU_NEED_TIME_H -DI_TIME
ext = armv7a-hardfloat-linux-uclibceabi-gcc-static-revngisolated
strict_rundir_verify = 0
CC = armv7a-hardfloat-linux-uclibceabi-gcc
CLD = revng cc -O2 -i -- armv7a-hardfloat-linux-uclibceabi-gcc -static
CXX = armv7a-hardfloat-linux-uclibceabi-g++
CXXLD = revng cc -O2 -i -- armv7a-hardfloat-linux-uclibceabi-g++ -static
include: gcc-base.cfg
400.perlbench=default=default=default:
CPORTABILITY = -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE -DI_FCNTL -DSPEC_CPU_NEED_TIME_H -DI_TIME
# This is a sample config file for CPU2006. It was tested with:
#
# Compiler name/version: [gcc,g++,gfortran 4.3 release]
# Operating system version: [SLES 10 SP1 for AMD64]
# Hardware: [Opteron]
#
# If your platform uses different versions, different
# hardware or operates in a different mode (for
# example, 32- vs. 64-bit mode), there is the possibiliy
# that this configuration file may not work as-is.
#
# Note that issues with compilation should be directed
# to the compiler vendor. Information about SPEC techncial
# support can be found in the techsupport document in the
# Docs directory of your benchmark installation.
#
# Also note that this is a sample configuration. It
# is expected to work for the environment in which
# it was tested; it is not guaranteed that this is
# the config file that will provide the best performance.
# Note that you might find a more recent config file for
# your platform with the posted results at
# www.spec.org/cpu2006
####################################################################
# AMD64 (64-bit) FSF's gcc 4.3 config file
# Sample Config file for CPU2006
#####################################################################
makeflags = -j8
check_md5 = 0
check_version = 0
ignore_errors = 0
tune = base
#ext = gcc-base
output_format = text,html,csv,config,screen
reportable = 1
teeout = yes
teerunout = yes
hw_avail = Dec-9999
license_num = 0
test_sponsor =
prepared_by =
tester =
default=default=default=default:
#####################################################################
#
# Compiler selection
#
#####################################################################
#CC = /usr/bin/gcc
#CXX = /usr/bin/g++
FC = /bin/false
## HW config
hw_model = Tyan Thunder KKQS Pro (S4882)
hw_cpu_name = AMD Opteron 256
hw_cpu_char =
hw_cpu_mhz = 3000
hw_fpu = Integrated
hw_nchips = 1
hw_ncores = 1
hw_ncoresperchip= 1
hw_nthreadspercore = 1
hw_ncpuorder = 1 chip
hw_pcache = 64 KB I + 64 KB D on chip per chip
hw_scache = 1 MB I+D on chip per chip
hw_tcache = None
hw_ocache = None
hw_memory = 2 GB (2 x 1GB DDR333 CL2.5)
hw_disk = SATA
hw_vendor = Tyan
hw_other = None
## SW config
sw_os = SUSE Linux Enterprise Server 10 (x86_64) SP1, Kernel 2.6.16.46-0.12-smp
sw_file = ext3
sw_state = Runlevel 3 (Full multiuser with network)
sw_compiler = gcc, g++ & gfortran 4.3.0 (for AMD64)
sw_avail = Mar-2008
sw_other = None
sw_base_ptrsize = 64-bit
sw_peak_ptrsize = Not Applicable
#####################################################################
# Optimization
#####################################################################
## Base is low opt
default=base=default=default:
COPTIMIZE = -g -O2 -fno-strict-aliasing -std=gnu89
CXXOPTIMIZE = -g -O2 -fno-strict-aliasing -std=gnu++98
FOPTIMIZE = -O2 -fno-strict-aliasing
#####################################################################
# 32/64 bit Portability Flags - all
#####################################################################
#default=base=default=default:
#PORTABILITY = -DSPEC_CPU_LP64
#####################################################################
# Portability Flags
#####################################################################
#400.perlbench=default=default=default:
#CPORTABILITY = -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE -DI_FCNTL -DSPEC_CPU_NEED_TIME_H
#CPORTABILITY = -DSPEC_CPU_LINUX_X64 -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE
462.libquantum=default=default=default:
CPORTABILITY= -DSPEC_CPU_LINUX
483.xalancbmk=default=default=default:
CXXPORTABILITY= -DSPEC_CPU_LINUX
481.wrf=default=default=default:
CPORTABILITY = -DSPEC_CPU_CASE_FLAG -DSPEC_CPU_LINUX
464.h264ref=default=default=default:
CPORTABILITY = -fsigned-char
CC = i386-gentoo-linux-musl-gcc
CLD = i386-gentoo-linux-musl-gcc -static
CXX = i386-gentoo-linux-musl-g++
CXXLD = i386-gentoo-linux-musl-g++ -static
include: gcc-base.cfg
400.perlbench=default=default=default:
CPORTABILITY = -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE -DI_FCNTL -DSPEC_CPU_NEED_TIME_H -DI_TIME
ext = i386-gentoo-linux-musl-gcc-static-native
include: i386-gentoo-linux-musl-base.cfg
ext = i386-gentoo-linux-musl-gcc-static-qemu
use_submit_for_speed = 1
submit = qemu-i386 $command
include: i386-gentoo-linux-musl-base.cfg
ext = i386-gentoo-linux-musl-gcc-static-revng
strict_rundir_verify = 0
CC = i386-gentoo-linux-musl-gcc
CLD = revng cc -O2 -- i386-gentoo-linux-musl-gcc -static
CXX = i386-gentoo-linux-musl-g++
CXXLD = revng cc -O2 -- i386-gentoo-linux-musl-g++ -static
include: gcc-base.cfg
400.perlbench=default=default=default:
CPORTABILITY = -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE -DI_FCNTL -DSPEC_CPU_NEED_TIME_H -DI_TIME
ext = i386-gentoo-linux-musl-gcc-static-revngisolated
strict_rundir_verify = 0
CC = i386-gentoo-linux-musl-gcc
CLD = revng cc -O2 -i -- i386-gentoo-linux-musl-gcc -static
CXX = i386-gentoo-linux-musl-g++
CXXLD = revng cc -O2 -i -- i386-gentoo-linux-musl-g++ -static
include: gcc-base.cfg
400.perlbench=default=default=default:
CPORTABILITY = -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE -DI_FCNTL -DSPEC_CPU_NEED_TIME_H -DI_TIME
CC = mips-unknown-linux-musl-gcc
CLD = mips-unknown-linux-musl-gcc -static
CXX = mips-unknown-linux-musl-g++
CXXLD = mips-unknown-linux-musl-g++ -static
include: gcc-base.cfg
default=base=default=default:
PORTABILITY = -DSPEC_CPU_BIG_ENDIAN
400.perlbench=default=default=default:
CPORTABILITY = -DSPEC_CPU_NO_USE_STDIO_PTR -DSPEC_CPU_NO_USE_STDIO_BASE -DI_FCNTL -DSPEC_CPU_NEED_TIME_H -DSPEC_CPU_LINUX_MIPS -DSPEC_CPU_BIG_ENDIAN
ext = mips-unknown-linux-musl-gcc-static-native
include: mips-unknown-linux-musl-base.cfg
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment