New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Set CI buildtypes to highest opt level possible and set default buildtype to debugoptimized #260
Conversation
Codecov Report
@@ Coverage Diff @@
## dev #260 +/- ##
==========================================
- Coverage 42.80% 42.79% -0.02%
==========================================
Files 871 871
Lines 316886 316550 -336
==========================================
- Hits 135653 135457 -196
+ Misses 181233 181093 -140
Continue to review full report at Codecov.
|
@@ -8,7 +8,13 @@ | |||
|
|||
extern ut32 constant_extender; | |||
|
|||
int hexagon_disasm_instruction(ut32 hi_u32, HexInsn *hi, ut32 addr) { | |||
#if ASAN |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
because of (https://github.com/rizinorg/rizin/runs/1608321103#step:12:2082):
I'm assuming gcc ran out of memory (based on e.g. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87316#c3).
.github/workflows/ci.yml
Outdated
@@ -66,7 +66,7 @@ jobs: | |||
compiler: gcc | |||
enabled: ${{ github.event_name == 'pull_request' }} | |||
timeout: 45 | |||
cflags: '-Werror -Wno-cpp' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
did you remove -Werror
just for test?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, it should be reenabled at the end
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm ok overall with the idea of moving to debugoptmized.
Not sure whether Codecov output is reliable under optimization though. |
Unfortunately, it appears that lines can disappear alarmingly from the Codecov report under and on especially the line on which the report restarts. |
e785ff0
to
d7f0ee0
Compare
@kazarmy we can still default to debugoptimized but use debug in the codecov CI job. |
I did a separate build for Codecov 6a1af99 since didn't want to lose the running of tests on Linux with debugoptimized. |
02682b5
to
a2bc67a
Compare
This reverts commit fb83f3e.
3d42bab
to
13b6bfd
Compare
Your checklist for this pull request
Detailed description
This pr:
Sets the
buildtype
for CI builds torelease
(-O3
) except the asan and Codecov builds. This is done because compiler optimizers increase performance but can also change code behavior (especially if the code invokes UB) so this needs to be tested.1.1 The asan
buildtype
is set todebugoptimized
(-O2 -g
) for hopefully sane stack traces.1.2 The Codecov
buildtype
is set todebug
becausedebugoptimized
(as seen in Set CI buildtypes to highest opt level possible and set default buildtype to debugoptimized #260 (comment)) produces wonky Codecov reports.Set the default
buildtype
todebugoptimized
due to reasons given in Set default meson buildtype to debugoptimized? #256 i.e. users might leave performance on the table otherwise.Test plan
All meson builds are green, including Windows and asan builds.
Closing issues
Closes #256.