-
Notifications
You must be signed in to change notification settings - Fork 37.7k
autoconf: Sane --enable-debug
defaults.
#16435
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
autoconf: Sane --enable-debug
defaults.
#16435
Conversation
Yes. Please! On macOS, without that fix, debugging with lldb/gdb is impossible. |
configure.ac
Outdated
@@ -271,11 +271,11 @@ if test "x$enable_debug" = xyes; then | |||
if test "x$CXXFLAGS_overridden" = xno; then | |||
CXXFLAGS="" | |||
fi | |||
# Prefer -Og, fall back to -O0 if that is unavailable. | |||
# Prefer -O0, fall back to -Og if that is unavailable. |
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 think it's fine to add -O0
unconditionally. E.g.: I would be very surprised if a compiler supports -Og
but not -O0
,
Concept ACK. One thing to note is that on Clang 8, I get a bunch of compiler warnings about things needing optimization if |
Don't optimize at all when --enable-debug is supplied. This makes sure that nothing is optimized out.
e85368f
to
d6ac25b
Compare
Addressed comments, there was some discussion on this here: http://gnusha.org/bitcoin-builds/2019-07-30.log |
From the above discussion: -0 from me. I would expect --enable-debug to turn on Og:
But I don't care that much, and the people that do care seem to want --enable-debug to mean more than the "standard edit-compile-debug cycle". That seems reasonable enough, so sure. |
Tested ACK d6ac25b |
d6ac25b autoconf: Sane --enable-debug defaults. (Carl Dong) Pull request description: ``` Don't optimize even if variables adhere to as-if rule. This is a somewhat sane default for debugging. ``` ----- Fixes: #14830 This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested `--enable-debug-slow` in the past. ACKs for top commit: jonasschnelli: Tested ACK d6ac25b Tree-SHA512: 7a5576ad1d33850aff1445ccb71b133f654b455da2d1daed2ed1b82ea773965790a62895aeeab74b23a25513ab96dddb670f9dbc593dd0b8c030694206a99ccf
d6ac25b autoconf: Sane --enable-debug defaults. (Carl Dong) Pull request description: ``` Don't optimize even if variables adhere to as-if rule. This is a somewhat sane default for debugging. ``` ----- Fixes: bitcoin#14830 This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested `--enable-debug-slow` in the past. ACKs for top commit: jonasschnelli: Tested ACK d6ac25b Tree-SHA512: 7a5576ad1d33850aff1445ccb71b133f654b455da2d1daed2ed1b82ea773965790a62895aeeab74b23a25513ab96dddb670f9dbc593dd0b8c030694206a99ccf
./configure updates Includes code cherry-picked from the following upstream Bitcoin Core PRs: - bitcoin/bitcoin#6748 - bitcoin/bitcoin#12373 - bitcoin/bitcoin#12692 - bitcoin/bitcoin#12901 - bitcoin/bitcoin#13005 - bitcoin/bitcoin#13445 - bitcoin/bitcoin#12686 - bitcoin/bitcoin#16435 Part of #2074.
d6ac25b autoconf: Sane --enable-debug defaults. (Carl Dong) Pull request description: ``` Don't optimize even if variables adhere to as-if rule. This is a somewhat sane default for debugging. ``` ----- Fixes: bitcoin#14830 This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested `--enable-debug-slow` in the past. ACKs for top commit: jonasschnelli: Tested ACK d6ac25b Tree-SHA512: 7a5576ad1d33850aff1445ccb71b133f654b455da2d1daed2ed1b82ea773965790a62895aeeab74b23a25513ab96dddb670f9dbc593dd0b8c030694206a99ccf
d6ac25b autoconf: Sane --enable-debug defaults. (Carl Dong) Pull request description: ``` Don't optimize even if variables adhere to as-if rule. This is a somewhat sane default for debugging. ``` ----- Fixes: bitcoin#14830 This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested `--enable-debug-slow` in the past. ACKs for top commit: jonasschnelli: Tested ACK d6ac25b Tree-SHA512: 7a5576ad1d33850aff1445ccb71b133f654b455da2d1daed2ed1b82ea773965790a62895aeeab74b23a25513ab96dddb670f9dbc593dd0b8c030694206a99ccf
d6ac25b autoconf: Sane --enable-debug defaults. (Carl Dong) Pull request description: ``` Don't optimize even if variables adhere to as-if rule. This is a somewhat sane default for debugging. ``` ----- Fixes: bitcoin#14830 This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested `--enable-debug-slow` in the past. ACKs for top commit: jonasschnelli: Tested ACK d6ac25b Tree-SHA512: 7a5576ad1d33850aff1445ccb71b133f654b455da2d1daed2ed1b82ea773965790a62895aeeab74b23a25513ab96dddb670f9dbc593dd0b8c030694206a99ccf
d6ac25b autoconf: Sane --enable-debug defaults. (Carl Dong) Pull request description: ``` Don't optimize even if variables adhere to as-if rule. This is a somewhat sane default for debugging. ``` ----- Fixes: bitcoin#14830 This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested `--enable-debug-slow` in the past. ACKs for top commit: jonasschnelli: Tested ACK d6ac25b Tree-SHA512: 7a5576ad1d33850aff1445ccb71b133f654b455da2d1daed2ed1b82ea773965790a62895aeeab74b23a25513ab96dddb670f9dbc593dd0b8c030694206a99ccf
d6ac25b autoconf: Sane --enable-debug defaults. (Carl Dong) Pull request description: ``` Don't optimize even if variables adhere to as-if rule. This is a somewhat sane default for debugging. ``` ----- Fixes: bitcoin#14830 This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested `--enable-debug-slow` in the past. ACKs for top commit: jonasschnelli: Tested ACK d6ac25b Tree-SHA512: 7a5576ad1d33850aff1445ccb71b133f654b455da2d1daed2ed1b82ea773965790a62895aeeab74b23a25513ab96dddb670f9dbc593dd0b8c030694206a99ccf
d6ac25b autoconf: Sane --enable-debug defaults. (Carl Dong) Pull request description: ``` Don't optimize even if variables adhere to as-if rule. This is a somewhat sane default for debugging. ``` ----- Fixes: bitcoin#14830 This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested `--enable-debug-slow` in the past. ACKs for top commit: jonasschnelli: Tested ACK d6ac25b Tree-SHA512: 7a5576ad1d33850aff1445ccb71b133f654b455da2d1daed2ed1b82ea773965790a62895aeeab74b23a25513ab96dddb670f9dbc593dd0b8c030694206a99ccf
Fixes: #14830
This is more of a "do something dumb and have people correct you" kind of PR. The end goal is to have a configure flag that will allow for debugging without annoying "optimized out" messages, for developer experiences' sake. This is the minimal diff, but people have suggested
--enable-debug-slow
in the past.