Build #120
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: | |
push: | |
branches: | |
- master | |
paths: | |
- FastMM4.pas | |
- FastMM4Messages.pas | |
- FastMM4Options.inc | |
workflow_dispatch: | |
jobs: | |
build_linux: | |
runs-on: self-hosted-linux | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Compile a simple demo in ObjFPC mode | |
run: cd $GITHUB_WORKSPACE/Tests/Simple && fpc -B -MObjFPC -Tlinux -Px86_64 -O4 SimpleTest.dpr | |
- name: Compile a simple demo in Delphi mode | |
run: cd $GITHUB_WORKSPACE/Tests/Simple && fpc -B -Mdelphi -Tlinux -Px86_64 -O4 SimpleTest.dpr | |
- name: Compile with various defined options | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDEBUG -g -O- SimpleTest.dpr | |
- name: Compile with -dDEBUG -g -dFullDebugMode | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDEBUG -g -dFullDebugMode -O- SimpleTest.dpr | |
- name: Compile with -dFullDebugMode | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dFullDebugMode -O4 SimpleTest.dpr | |
- name: Compile with -dAlign16Bytes | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dAlign16Bytes -O4 SimpleTest.dpr | |
- name: Compile with -dAlign32Bytes | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dAlign32Bytes -O4 SimpleTest.dpr | |
- name: Compile with -dDontUseCustomFixedSizeMoveRoutines | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDontUseCustomFixedSizeMoveRoutines -O4 SimpleTest.dpr | |
- name: Compile with -dDontUseCustomVariableSizeMoveRoutines | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDontUseCustomVariableSizeMoveRoutines -O4 SimpleTest.dpr | |
- name: Compile with -dForceSingleThreaded | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dForceSingleThreaded -O4 SimpleTest.dpr | |
- name: Compile with -dDisablePauseAndSwitchToThread | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDisablePauseAndSwitchToThread -O4 SimpleTest.dpr | |
- name: Compile with -dDontUseSmallBlocksLockedCriticalSection | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDontUseSmallBlocksLockedCriticalSection -O4 SimpleTest.dpr | |
- name: Compile with -dDontUseMediumBlocksLockedCriticalSection | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDontUseMediumBlocksLockedCriticalSection -O4 SimpleTest.dpr | |
- name: Compile with -dDontUseLargeBlocksLockedCriticalSection | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDontUseLargeBlocksLockedCriticalSection -O4 SimpleTest.dpr | |
- name: Compile with -dDontUseASMVersion | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDontUseASMVersion -O4 SimpleTest.dpr | |
- name: Compile with -dDontUseASMVersion | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDontUseASMVersion -O4 SimpleTest.dpr | |
- name: Compile with -dDisableMemoryLeakReporting | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dDisableMemoryLeakReporting -O4 SimpleTest.dpr | |
- name: Compile with -dRequireIDEPresenceForLeakReporting | |
run: | | |
cd $GITHUB_WORKSPACE/Tests/Simple | |
fpc -B -Mdelphi -Tlinux -Px86_64 -dRequireIDEPresenceForLeakReporting -O4 SimpleTest.dpr | |
build_windows: | |
runs-on: self-hosted-windows | |
# Steps represent a sequence of tasks that will be executed as part of the job | |
steps: | |
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
- uses: actions/checkout@v3 | |
- name: Compile by FreePascal 32-bit with -dDisableAsmCodeAlign | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDisableAsmCodeAlign', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDEBUG | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDEBUG', '-g', '-O-', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDEBUG -dFullDebugMode | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDEBUG', '-g', '-dFullDebugMode', '-O-', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dFullDebugMode but not DEBUG | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dFullDebugMode', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dAlign16Bytes | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dAlign16Bytes', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dAlign32Bytes | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dAlign32Bytes', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDontUseCustomFixedSizeMoveRoutines | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDontUseCustomFixedSizeMoveRoutines', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDontUseCustomVariableSizeMoveRoutines | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDontUseCustomVariableSizeMoveRoutines', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dForceSingleThreaded | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dForceSingleThreaded', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDisablePauseAndSwitchToThread | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDisablePauseAndSwitchToThread', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDontUseSmallBlocksLockedCriticalSection | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDontUseSmallBlocksLockedCriticalSection', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDontUseMediumBlocksLockedCriticalSection | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDontUseMediumBlocksLockedCriticalSection', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDontUseLargeBlocksLockedCriticalSection | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDontUseLargeBlocksLockedCriticalSection', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDontUseASMVersion | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDontUseASMVersion', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dDisableMemoryLeakReporting | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dDisableMemoryLeakReporting', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 32-bit with -dRequireIDEPresenceForLeakReporting | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin32', '-Pi386', '-dRequireIDEPresenceForLeakReporting', '-O4', 'SimpleTest.dpr') | |
- name: Compile AVX-512 Assembly | |
run: | | |
cd $Env:GITHUB_WORKSPACE | |
& 'nasm.exe' @('-Ox', '-Ov', '-f', 'win64', 'FastMM4_AVX512.asm') | |
- name: Compile by FreePascal 64-bit with -dDisableAsmCodeAlign | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDisableAsmCodeAlign', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDEBUG | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDEBUG', '-g', '-O-', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDEBUG -dFullDebugMode | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDEBUG', '-g', '-dFullDebugMode', '-O-', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dFullDebugMode but not DEBUG | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dFullDebugMode', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dAlign16Bytes | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dAlign16Bytes', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dAlign32Bytes | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dAlign32Bytes', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDontUseCustomFixedSizeMoveRoutines | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDontUseCustomFixedSizeMoveRoutines', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDontUseCustomVariableSizeMoveRoutines | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDontUseCustomVariableSizeMoveRoutines', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dForceSingleThreaded | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dForceSingleThreaded', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDisablePauseAndSwitchToThread | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDisablePauseAndSwitchToThread', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDontUseSmallBlocksLockedCriticalSection | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDontUseSmallBlocksLockedCriticalSection', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDontUseMediumBlocksLockedCriticalSection | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDontUseMediumBlocksLockedCriticalSection', '-O4','SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDontUseLargeBlocksLockedCriticalSection | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDontUseLargeBlocksLockedCriticalSection', '-O4','SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDontUseASMVersion | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDontUseASMVersion', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dDisableMemoryLeakReporting | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dDisableMemoryLeakReporting', '-O4', 'SimpleTest.dpr') | |
- name: Compile by FreePascal 64-bit with -dRequireIDEPresenceForLeakReporting | |
run: | | |
cd $Env:GITHUB_WORKSPACE/Tests/Simple | |
& 'fpc.exe' @('-B', '-Mdelphi', '-Twin64', '-Px86_64', '-dRequireIDEPresenceForLeakReporting', '-O4', 'SimpleTest.dpr') |