Page MenuHomeFreeBSD

bhyve: Stop compiling with -O0.
ClosedPublic

Authored by markj on Apr 2 2019, 1:33 AM.
Tags
None
Referenced Files
F105784281: D19787.diff
Fri, Dec 20, 3:59 PM
Unknown Object (File)
Thu, Dec 5, 3:50 AM
Unknown Object (File)
Wed, Dec 4, 1:51 PM
Unknown Object (File)
Sat, Nov 23, 1:14 PM
Unknown Object (File)
Sat, Nov 23, 9:18 AM
Unknown Object (File)
Nov 20 2024, 8:27 AM
Unknown Object (File)
Oct 4 2024, 6:09 PM
Unknown Object (File)
Oct 2 2024, 11:27 AM
Subscribers

Details

Summary

This appears to be accidental and came in with r243327. The bhyve
executable shrinks by over 30% with this change.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 23459
Build 22472: arc lint + arc unit

Event Timeline

Does this variable get used by default? I saw this here and just ignored it as I thought it would only be invoked if I asked for a DEBUG build from a level above. If we are always adding DEBUG_FLAGS to our compiles perhaps it should be called something else?

This revision is now accepted and ready to land.Apr 2 2019, 1:54 AM

I think we should probably keep this, since by default EDK2 DEBUG builds are built with optimization enabled, which obviously makes debugging via gdb etc. irritating/difficult.
I always have to add -O0 to let me single step through the firmware.

I think we should probably keep this, since by default EDK2 DEBUG builds are built with optimization enabled, which obviously makes debugging via gdb etc. irritating/difficult.
I always have to add -O0 to let me single step through the firmware.

I'm not sure what you mean, and I don't understand the connection between EDK2 and the bhyve build. Are you requesting that we always set -O0, even in release builds? Or do you want to leave this line commented out?

Does this variable get used by default?

Yes, see bsd.prog.mk:

.if defined(DEBUG_FLAGS)                                                                                                                                  
CFLAGS+=${DEBUG_FLAGS}                                                                                                                                    
CXXFLAGS+=${DEBUG_FLAGS}                                                                                                                                  
...
.endif

I'm not sure what you mean, and I don't understand the connection between EDK2 and the bhyve build. Are you requesting that we always set -O0, even in release builds? Or do you want to leave this line commented out?

Sorry, wrong context. I was thinking of the uefi-edk2-bhyve port, which builds EDK2. This is different.

This revision was automatically updated to reflect the committed changes.