-O2 flag

Patrick Mahan mahan at mahan.org
Sat Jun 10 22:24:04 UTC 2017


On 6/10/17 2:09 PM, Serpent7776 wrote:
> On Sat, 10 Jun 2017 16:20:25 -0300
> Friedrich Locke <friedrich.locke at gmail.com> wrote:
> 
>> Hi folks,
>>
>> i am trying compile a program with cc on freebsd 11.
>> When i use -O2 compilation flag, the compiled code is giving error on 
>> execution, but with i omit -O2 everything works ok.
>>
>> Have anybody already faced such problem ?
> Yes, a few times in the past. Your code may have hidden bug which is triggered
> only with optimizations enabled. It might be relying on some kind of undefined
> behaviour.
> Unfortunately, I don't have any helpful advices on how to find this error -
> try enabling all compiler warnings flags.
> I'd suspect a bug in your code rather than a bug in compiler, but the latter is
> not impossible.
> 

This is especially noticeable when you use uninitialized stack variables in a
function.  Non-optimized generally gets you a cleaner stack.  But I've seen
code that assumes a stack variable always has a certain value.

Patrick


More information about the freebsd-questions mailing list