Skip to content

Try vectorizing palette offset lookup on large palette writes #176

Try vectorizing palette offset lookup on large palette writes

Try vectorizing palette offset lookup on large palette writes #176

Workflow file for this run

name: CI
on:
push:
pull_request:
workflow_dispatch:
jobs:
build:
name: PHP ${{ matrix.php }} (ZTS) Valgrind ${{ matrix.valgrind }}
runs-on: ubuntu-20.04
if: "!contains(github.event.head_commit.message, '[ci skip]')"
strategy:
fail-fast: false
matrix:
php: ['8.0.27', '8.1.14', '8.2.1']
valgrind: [0, 1]
env:
CFLAGS: "-march=x86-64"
CXXFLAGS: "-march=x86-64"
steps:
- uses: actions/checkout@v3
- name: Install Valgrind
if: matrix.valgrind == '1'
run: |
sudo apt-get update && sudo apt-get install valgrind
echo "TEST_PHP_ARGS=-m" >> $GITHUB_ENV
echo "PHP_BUILD_CONFIGURE_OPTS=--with-valgrind" >> $GITHUB_ENV
- name: Restore PHP build cache
id: php-build-cache
uses: actions/cache@v3
with:
path: ${{ github.workspace }}/php
key: php-build-debug-${{ matrix.php }}-valgrind-${{ matrix.valgrind }}
- name: Clone php-build repository
if: steps.php-build-cache.outputs.cache-hit != 'true'
uses: actions/checkout@v3
with:
repository: pmmp/php-build
path: php-build
- name: Compile PHP
if: steps.php-build-cache.outputs.cache-hit != 'true'
run: |
cd $GITHUB_WORKSPACE/php-build
./install-dependencies.sh
PHP_BUILD_ZTS_ENABLE=on PHP_BUILD_CONFIGURE_OPTS="$PHP_BUILD_CONFIGURE_OPTS --enable-debug" ./bin/php-build ${{ matrix.php }} $GITHUB_WORKSPACE/php
- name: Dump PHP info
run: $GITHUB_WORKSPACE/php/bin/php -i
- name: Build extension
run: |
$GITHUB_WORKSPACE/php/bin/phpize
./configure --with-php-config=$GITHUB_WORKSPACE/php/bin/php-config
make install
- name: Run .phpt tests
run: REPORT_EXIT_STATUS=1 NO_INTERACTION=1 TEST_PHP_ARGS="$TEST_PHP_ARGS --show-diff" make test
- name: Upload test results
if: failure()
uses: actions/upload-artifact@v3
with:
name: test-results-${{ matrix.php }}-valgrind-${{ matrix.valgrind }}
path: |
${{ github.workspace }}/tests/*
!${{ github.workspace }}/tests/*.phpt