1
0
Fork 0
mirror of https://github.com/hermitcore/libhermit.git synced 2025-03-30 00:00:15 +01:00

Wshift negative value (#79) + more compiler to travis (#77)

- Fixed clang warning `shifting a negative signed value is undefined`.
- use more compilers to test HermitCore in Travis
This commit is contained in:
Jens Breitbart 2017-08-30 12:48:57 +02:00 committed by Stefan Lankes
parent e2803e606b
commit cbb34022a0
4 changed files with 90 additions and 16 deletions

View file

@ -1,34 +1,108 @@
sudo: required
dist: trusty
language: c
git:
submodules: true
language: c
compiler:
- clang
- gcc
matrix:
include:
- compiler: gcc
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.9
env:
- COMPILERCXX=g++-4.9
- COMPILERC=gcc-4.9
- DEPLOY=true
- compiler: gcc
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
env:
- COMPILERCXX=g++-5
- COMPILERC=gcc-5
- compiler: gcc
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-6
env:
- COMPILERCXX=g++-6
- COMPILERC=gcc-6
- compiler: clang
env:
- COMPILERC=clang
- COMPILERCXX=clang++
- CLANGV=3.8.1
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-6
- compiler: clang
env:
- COMPILERC=clang
- COMPILERCXX=clang++
- CLANGV=3.9.1
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-6
- compiler: clang
env:
- COMPILERC=clang
- COMPILERCXX=clang++
- CLANGV=4.0.1
- RUNCLANGTIDY=TRUE
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-6
before_install:
- echo "deb https://dl.bintray.com/rwth-os/hermitcore vivid main" | sudo tee -a /etc/apt/sources.list
- travis_retry sudo apt-get -qq update
- travis_retry sudo apt-get install -y curl wget qemu-system-x86 nasm texinfo libmpfr-dev libmpc-dev libgmp-dev libisl-dev flex bison packaging-dev rpm
- travis_retry sudo apt-get install -y --force-yes binutils-hermit libhermit newlib-hermit pthread-embedded-hermit gcc-hermit
- git submodule update --init lwip usr/libomp
# download clang
- mkdir $HOME/clang+llvm
- export PATH=$HOME/clang+llvm/bin:$PATH
- if [ -n "$CLANGV" ]; then wget http://llvm.org/releases/$CLANGV/clang+llvm-$CLANGV-x86_64-linux-gnu-debian8.tar.xz -O $HOME/clang+llvm.tar.xz; fi
- if [ -n "$CLANGV" ]; then tar xf $HOME/clang+llvm.tar.xz -C $HOME/clang+llvm --strip-components 1; fi
script:
- source cmake/local-cmake.sh
- mkdir build
- cd build
- cmake ..
- make -j1 package
- cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=true ..
- CC=$COMPILERC CXX=$COMPILERCXX make -j1 package
- cd $TRAVIS_BUILD_DIR
- ./tests.sh
notifications:
slack: hermitcore:UtcfeEXkbpx3WyIDK2Wm2beS
deploy:
on:
on:
branch: master
condition: "$CC = gcc"
condition: $DEPLOY = true
provider: bintray
file: .bintray_descriptor.json
user:

View file

@ -48,11 +48,11 @@
#define PAGE_SIZE ( 1L << PAGE_BITS)
/// Mask the page address without page map flags and XD flag
#if 0
#define PAGE_MASK ((~0L) << PAGE_BITS)
#define PAGE_2M_MASK (~0L) << PAGE_2M_BITS)
#define PAGE_MASK ((~0UL) << PAGE_BITS)
#define PAGE_2M_MASK (~0UL) << PAGE_2M_BITS)
#else
#define PAGE_MASK (((~0L) << PAGE_BITS) & ~PG_XD)
#define PAGE_2M_MASK (((~0L) << PAGE_2M_BITS) & ~PG_XD)
#define PAGE_MASK (((~0UL) << PAGE_BITS) & ~PG_XD)
#define PAGE_2M_MASK (((~0UL) << PAGE_2M_BITS) & ~PG_XD)
#endif
#if 0

View file

@ -37,9 +37,9 @@
#define PAGE_SIZE ( 1L << PAGE_BITS)
/// Mask the page address without page map flags and XD flag
#ifdef CONFIG_X86_32
#define PAGE_MASK (-1L << PAGE_BITS)
#define PAGE_MASK (~0UL << PAGE_BITS)
#elif defined(CONFIG_X86_64)
#define PAGE_MASK ((-1L << PAGE_BITS) & ~PG_XD)
#define PAGE_MASK ((~0UL << PAGE_BITS) & ~PG_XD)
#endif
#ifdef CONFIG_X86_32

View file

@ -100,8 +100,8 @@
#define PAGE_MASK ((~0L) << PAGE_BITS)
#define PAGE_2M_MASK (~0L) << PAGE_2M_BITS)
#else
#define PAGE_MASK (((~0L) << PAGE_BITS) & ~PG_XD)
#define PAGE_2M_MASK (((~0L) << PAGE_2M_BITS) & ~PG_XD)
#define PAGE_MASK (((~0UL) << PAGE_BITS) & ~PG_XD)
#define PAGE_2M_MASK (((~0UL) << PAGE_2M_BITS) & ~PG_XD)
#endif
// Page is present