Skip to content

Allow to pass compiler flags via CFLAGS - #1112

Open
hernanponcedeleon wants to merge 1 commit into
developmentfrom
cflags
Open

hernanponcedeleon wants to merge 1 commit into
developmentfrom
cflags

Conversation

@hernanponcedeleon

Copy link
Copy Markdown
Owner

No description provided.

@ThomasHaas

ThomasHaas commented Sep 17, 2026

Copy link
Copy Markdown
Collaborator

Isn't CFLAGS strictly associated with C compilers not general compilers? If so, I think using CFLAGS in all compilation pipelines is dangerous. What if the user has their CFLAGS set-up in the environment specifically for their C compiler (maybe -Wall is always set via a shell config) and then invokes Dartagnan on SPIRV code? The SPIRV compiler will probably fail due to the unrecognized options passed via CFLAGS, no?

Can't we just allow any $OPTION in the .yml as a standalone argument and let the user decide what he wants to call that option by modifying the .yml? We can of course put $CFLAGS by default for .c code but leave it out for other pipelines (unless they also have a commonly used name for the compiler flags option).

@github-actions

Copy link
Copy Markdown

Performance comparison

Linux x64

Benchmark details

Memory model: vmm

Benchmark Base branch PR branch Improvement (99% CI) Result
benchmarks/locks/cna.c 15.396 ± 0.990 s 15.614 ± 0.496 s ➖ -1.6% [-28.9%, +25.7%] UNKNOWN
benchmarks/locks/mutex_musl.c 34.838 ± 1.613 s 34.668 ± 0.602 s ➖ +0.4% [-17.9%, +18.7%] UNKNOWN
benchmarks/lfds/dglm.c 22.786 ± 1.985 s 21.967 ± 1.193 s ➖ +3.1% [-58.1%, +64.3%] UNKNOWN
benchmarks/lfds/ms.c 35.509 ± 4.741 s 35.750 ± 4.659 s ➖ -2.7% [-147.0%, +141.6%] UNKNOWN
benchmarks/lfds/treiber.c 12.032 ± 0.350 s 11.298 ± 0.435 s ➖ +6.1% [-9.5%, +21.7%] UNKNOWN
benchmarks/lfds/safe_stack.c 8.152 ± 0.102 s 8.331 ± 0.508 s ➖ -2.2% [-41.9%, +37.4%] UNKNOWN
benchmarks/challenging/cna.c 40.563 ± 5.746 s 37.783 ± 2.436 s ➖ +5.1% [-100.9%, +111.1%] UNKNOWN

Memory model: aarch64

Benchmark Base branch PR branch Improvement (99% CI) Result
benchmarks/locks/linuxrwlock.c 7.498 ± 0.144 s 7.534 ± 0.147 s ➖ -0.5% [-17.5%, +16.4%] UNKNOWN
benchmarks/locks/mutex_musl.c 5.972 ± 0.456 s 6.463 ± 0.023 s ➖ -8.6% [-53.8%, +36.6%] UNKNOWN
benchmarks/challenging/cna.c 14.189 ± 1.101 s 15.744 ± 1.837 s ➖ -11.3% [-90.6%, +68.0%] UNKNOWN
benchmarks/challenging/wsq.c 6.739 ± 0.075 s 6.642 ± 0.220 s ➖ +1.4% [-17.7%, +20.5%] UNKNOWN

Memory model: power

Benchmark Base branch PR branch Improvement (99% CI) Result
benchmarks/locks/linuxrwlock.c 22.281 ± 0.558 s 22.416 ± 0.697 s ➖ -0.7% [-30.0%, +28.7%] UNKNOWN
benchmarks/locks/mutex_musl.c 20.576 ± 1.034 s 21.220 ± 1.074 s ❌ -3.1% [-5.2%, -1.1%] UNKNOWN
benchmarks/lfds/dglm.c 5.626 ± 0.126 s 5.855 ± 0.184 s ➖ -4.1% [-27.6%, +19.4%] UNKNOWN
benchmarks/lfds/ms.c 22.458 ± 0.522 s 24.302 ± 1.200 s ➖ -8.2% [-34.9%, +18.5%] UNKNOWN
benchmarks/lfds/treiber.c 18.239 ± 0.891 s 18.653 ± 1.655 s ➖ -2.3% [-49.0%, +44.4%] UNKNOWN

Total

Benchmarks Base branch PR branch Improvement (99% CI)
All reported benchmarks 292.854 ± 2.439 s 294.239 ± 3.052 s ➖ -0.5% [-2.8%, +1.8%]

2 benchmark(s) omitted because both averages were below 5 seconds.

macOS ARM64

Benchmark details

Memory model: vmm

Benchmark Base branch PR branch Improvement (99% CI) Result
benchmarks/locks/cna.c 22.239 ± 0.390 s 24.920 ± 0.949 s ➖ -12.1% [-47.6%, +23.3%] UNKNOWN
benchmarks/locks/mutex_musl.c 25.272 ± 1.182 s 26.247 ± 0.740 s ➖ -3.9% [-16.0%, +8.1%] UNKNOWN
benchmarks/lfds/dglm.c 57.313 ± 4.740 s 50.063 ± 6.189 s ➖ +12.6% [-35.7%, +61.0%] UNKNOWN
benchmarks/lfds/ms.c 61.924 ± 7.863 s 56.615 ± 6.413 s ➖ +7.3% [-98.2%, +112.8%] UNKNOWN
benchmarks/lfds/treiber.c 14.415 ± 1.092 s 16.156 ± 2.696 s ➖ -12.5% [-130.4%, +105.5%] UNKNOWN
benchmarks/lfds/safe_stack.c 12.258 ± 1.400 s 12.923 ± 0.941 s ➖ -5.9% [-52.1%, +40.2%] UNKNOWN
benchmarks/challenging/cna.c 43.409 ± 1.487 s 48.907 ± 0.852 s ➖ -12.8% [-37.5%, +12.0%] UNKNOWN

Memory model: aarch64

Benchmark Base branch PR branch Improvement (99% CI) Result
benchmarks/locks/linuxrwlock.c 19.487 ± 1.117 s 17.752 ± 2.027 s ➖ +8.4% [-77.2%, +93.9%] UNKNOWN
benchmarks/locks/mutex_musl.c 14.620 ± 2.843 s 15.365 ± 2.997 s ➖ -5.2% [-43.2%, +32.7%] UNKNOWN
benchmarks/lfds/dglm.c 14.811 ± 2.923 s 11.823 ± 1.031 s ➖ +18.7% [-47.6%, +85.0%] PASS
benchmarks/lfds/ms.c 11.750 ± 1.460 s 14.809 ± 0.415 s ➖ -27.0% [-98.4%, +44.3%] UNKNOWN
benchmarks/challenging/cna.c 33.282 ± 1.270 s 34.796 ± 1.907 s ➖ -4.7% [-47.8%, +38.5%] UNKNOWN
benchmarks/challenging/wsq.c 16.411 ± 0.862 s 16.343 ± 1.038 s ➖ +0.3% [-35.3%, +36.0%] UNKNOWN

Memory model: power

Benchmark Base branch PR branch Improvement (99% CI) Result
benchmarks/locks/linuxrwlock.c 58.211 ± 9.467 s 59.244 ± 6.773 s ➖ -2.3% [-29.2%, +24.6%] UNKNOWN
benchmarks/locks/mutex_musl.c 35.516 ± 3.404 s 31.920 ± 2.735 s ➖ +9.2% [-77.4%, +95.8%] UNKNOWN
benchmarks/lfds/dglm.c 9.654 ± 0.932 s 10.041 ± 0.271 s ➖ -4.7% [-67.5%, +58.1%] UNKNOWN
benchmarks/lfds/ms.c 54.889 ± 3.342 s 51.226 ± 2.168 s ➖ +6.6% [-10.7%, +23.9%] UNKNOWN
benchmarks/lfds/treiber.c 26.489 ± 2.025 s 24.202 ± 1.333 s ➖ +8.2% [-49.6%, +66.0%] UNKNOWN

Total

Benchmarks Base branch PR branch Improvement (99% CI)
All reported benchmarks 531.950 ± 19.340 s 523.351 ± 8.680 s ➖ +1.6% [-16.1%, +19.2%]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants