Use builtin nvptx64-nvidia-cuda target
This commit is contained in:
parent
fe06593c6f
commit
6affc41386
4 changed files with 16 additions and 90 deletions
|
|
@ -57,13 +57,7 @@ matrix:
|
|||
- name: "wasm32-unknown-unknown"
|
||||
env: TARGET=wasm32-unknown-unknown
|
||||
- name: "nvptx64-nvidia-cuda - cross compiled, build libcore only"
|
||||
env: TARGET=x86_64-unknown-linux-gnu CROSS_TARGET=nvptx64-nvidia-cuda-cross NORUN=1 NOSTD=1
|
||||
install:
|
||||
- travis_retry rustup target add $TARGET
|
||||
- travis_retry rustup component add rust-src
|
||||
- cargo install xargo
|
||||
- xargo --version
|
||||
- mkdir -p $HOME/.xargo
|
||||
env: TARGET=x86_64-unknown-linux-gnu NORUN=1 NOSTD=1
|
||||
- name: "thumbv6m-none-eabi - build libcore only"
|
||||
env: TARGET=thumbv6m-none-eabi NORUN=1 NOSTD=1
|
||||
script: ci/run.sh
|
||||
|
|
@ -105,7 +99,7 @@ matrix:
|
|||
install: travis_retry rustup target add $TARGET
|
||||
script:
|
||||
- cargo generate-lockfile
|
||||
- ci/run-docker.sh $TARGET $CROSS_TARGET $FEATURES
|
||||
- ci/run-docker.sh $TARGET
|
||||
|
||||
notifications:
|
||||
email:
|
||||
|
|
|
|||
|
|
@ -1,16 +0,0 @@
|
|||
{
|
||||
"arch": "nvptx64"
|
||||
, "cpu": "sm_35"
|
||||
, "data-layout": "e-i64:64-i128:128-v16:16-v32:32-n16:32:64"
|
||||
, "linker": false
|
||||
, "linker-flavor": "ld"
|
||||
, "llvm-target": "nvptx64-nvidia-cuda"
|
||||
, "max-atomic-width": 0
|
||||
, "merge-functions": "disabled"
|
||||
, "obj-is-bitcode": true
|
||||
, "os": "cuda"
|
||||
, "panic-strategy": "abort"
|
||||
, "target-c-int-width": "32"
|
||||
, "target-endian": "little"
|
||||
, "target-pointer-width": "64"
|
||||
}
|
||||
|
|
@ -7,16 +7,8 @@ set -ex
|
|||
|
||||
run() {
|
||||
target=$(echo "${1}" | sed 's/-emulated//')
|
||||
cross="0"
|
||||
if [ -z "${2}" ]; then
|
||||
echo "Building docker container for TARGET=${1}"
|
||||
docker build -t stdsimd -f "ci/docker/${1}/Dockerfile" ci/
|
||||
else
|
||||
target=$(echo "${2}" | sed 's/-cross//')
|
||||
cross="1"
|
||||
echo "Building docker container for CROSS_TARGET=${2}"
|
||||
docker build -t stdsimd -f "ci/docker/${2}/Dockerfile" ci/
|
||||
fi
|
||||
echo "Building docker container for TARGET=${1}"
|
||||
docker build -t stdsimd -f "ci/docker/${1}/Dockerfile" ci/
|
||||
mkdir -p target
|
||||
echo "Running docker"
|
||||
# shellcheck disable=SC2016
|
||||
|
|
@ -26,8 +18,6 @@ run() {
|
|||
--init \
|
||||
--volume "${HOME}"/.cargo:/cargo-h \
|
||||
--env CARGO_HOME=/cargo-h \
|
||||
--volume "${HOME}"/.xargo:/xargo-h \
|
||||
--env XARGO_HOME=/xargo-h \
|
||||
--volume "$(rustc --print sysroot)":/rust:ro \
|
||||
--env TARGET="${target}" \
|
||||
--env STDSIMD_TEST_EVERYTHING \
|
||||
|
|
@ -37,7 +27,6 @@ run() {
|
|||
--env NORUN \
|
||||
--env RUSTFLAGS \
|
||||
--env STDSIMD_TEST_NORUN \
|
||||
--env CROSS="${cross}" \
|
||||
--volume "$(pwd)":/checkout:ro \
|
||||
--volume "$(pwd)"/target:/checkout/target \
|
||||
--workdir /checkout \
|
||||
|
|
@ -52,5 +41,5 @@ if [ -z "$1" ]; then
|
|||
run "${d}"
|
||||
done
|
||||
else
|
||||
run "${1}" "${2}"
|
||||
run "${1}"
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -30,59 +30,18 @@ echo "FEATURES=${FEATURES}"
|
|||
echo "OBJDUMP=${OBJDUMP}"
|
||||
echo "STDSIMD_DISABLE_ASSERT_INSTR=${STDSIMD_DISABLE_ASSERT_INSTR}"
|
||||
echo "STDSIMD_TEST_EVERYTHING=${STDSIMD_TEST_EVERYTHING}"
|
||||
echo "CROSS=${CROSS}"
|
||||
|
||||
cargo_setup() {
|
||||
if [ "$CROSS" = "1" ]
|
||||
then
|
||||
export RUST_TARGET_PATH="/checkout/ci/cross"
|
||||
echo "RUST_TARGET_PATH=${RUST_TARGET_PATH}"
|
||||
fi
|
||||
}
|
||||
|
||||
cargo_test() {
|
||||
if [ "$CROSS" = "1" ]
|
||||
then
|
||||
cmd="/cargo-h/bin/xargo"
|
||||
else
|
||||
cmd="cargo"
|
||||
fi
|
||||
cmd="cargo"
|
||||
subcmd="test"
|
||||
if [ "$NORUN" = "1" ]
|
||||
then
|
||||
if [ "$CROSS" = "1" ]
|
||||
then
|
||||
export subcmd="rustc"
|
||||
else
|
||||
export subcmd="build"
|
||||
fi
|
||||
if [ "$NORUN" = "1" ]; then
|
||||
export subcmd="build"
|
||||
fi
|
||||
cmd="$cmd ${subcmd} --target=$TARGET $1"
|
||||
cmd="$cmd -- $2"
|
||||
# Un-commenting this disables the test output and shows only a summary:
|
||||
#if [ "$NORUN" != "1" ]
|
||||
#then
|
||||
# if [ "$TARGET" != "wasm32-unknown-unknown" ]
|
||||
# then
|
||||
# cmd="$cmd --quiet"
|
||||
# fi
|
||||
#fi
|
||||
if [ "$CROSS" = "1" ]
|
||||
then
|
||||
cmd="$cmd --emit=asm"
|
||||
fi
|
||||
$cmd
|
||||
}
|
||||
|
||||
cargo_output() {
|
||||
if [ "$CROSS" = "1" ]
|
||||
then
|
||||
find /checkout/target -name "*.s"
|
||||
fi
|
||||
}
|
||||
|
||||
cargo_setup
|
||||
|
||||
CORE_ARCH="--manifest-path=crates/core_arch/Cargo.toml"
|
||||
STD_DETECT="--manifest-path=crates/std_detect/Cargo.toml"
|
||||
STDSIMD_EXAMPLES="--manifest-path=examples/Cargo.toml"
|
||||
|
|
@ -101,8 +60,6 @@ if [ "$NOSTD" != "1" ]; then
|
|||
cargo_test "${STDSIMD_EXAMPLES} --release"
|
||||
fi
|
||||
|
||||
cargo_output
|
||||
|
||||
# Test targets compiled with extra features.
|
||||
case ${TARGET} in
|
||||
x86*)
|
||||
|
|
@ -123,9 +80,11 @@ case ${TARGET} in
|
|||
|
||||
esac
|
||||
|
||||
# Test examples
|
||||
(
|
||||
cd examples
|
||||
cargo test
|
||||
echo test | cargo run --release hex
|
||||
)
|
||||
if [ "$NORUN" != "1" ] && [ "$NOSTD" != 1 ]; then
|
||||
# Test examples
|
||||
(
|
||||
cd examples
|
||||
cargo test --target "$TARGET"
|
||||
echo test | cargo run --release hex
|
||||
)
|
||||
fi
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue