William A. Rowe, Jr. wrote:
I'd like to modify the Win32 build projects (of mod_jk, and
httpd 1.3/2.0/2.1-dev, along with apr);


The /O2 optimization option is extremely agressive, unfortunately it produces less than ideal crash traceback information. That is due to the (implicit) /Oy flag, which omits respecible stack
framing. I'd like to change this to /O2 /Oy- to disable this
optimization; processing will be unmeasurably slower, but far
more useful when crashes do occur.


The /O2 optimization also simplifies the stack frame checking
for many functions. The /Gs0 option would restore full frame
checks, to ensure we don't overflow the stack in the processing
of any function. With FirstBill's (wise) choice to reduce the
size of our default stack frames within httpd, it seems wise to
be extra diligent. However, MS's docs state that /O2 implies
/Gs - and I can't determine if that is /Gs0 (implied) or some
other behavior. Thoughts from someone with more experience playing in stack probes would be appreciated.


All in all - comments?

Bill

+1 in concept. I'll take debugability at the cost of a small performance hit anyday.

Bill




Reply via email to