On Feb 24 2014, at 06:09 , Magnus Ihse Bursie <magnus.ihse.bur...@oracle.com> 
wrote:
> Mike,
> 
> I have only looked at toolchain.m4.
> 
> First of all, I like the $C_O_FLAG_DEBUG logic.
> 
> Some questions/comments:
> * Have you tested the -qnoopt option on xlc?

I copied it from the hotspot makefiles but have not tested it personally.

> * This code and comment is not really aligned. Is the comment overly broad, 
> or is it a mistake in C_O_FLAG_HIGHEST?
>  # Disable optimization
>  C_O_FLAG_HIGHEST="$C_O_FLAG_NORM"
>  C_O_FLAG_HI="$C_O_FLAG_DEBUG"
> * Maybe it's worth considering to extract the duplication of 
> "-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-all --param 
> ssp-buffer-size=1" into a separate variable, something like 
> CFLAGS_EXTRA_CHECKS or whatever. The same argument is also valid for the 
> fastdebug extra switches, I think, even the amount of code duplication is not 
> as high. Hm. Actually. In fact, from what I can tell this change will add 
> these extra flags on all compilers, even though they are GCC only (?). So 
> breaking out these flags into a variable, that can be set to empty if not 
> using gcc, is probably not just a matter of style but a matter of correctness.

I sort of followed this advice, see what you think of how it is now.

> * I'd also have a preference for moving the "compiler supports -Og" check 
> outside the actual flag setting. Maybe you can do the checking first and set 
> a variable indicating the availablility of this flag, e.g. 
> GCC_SUPPORTS_OG_FLAG, and then just check on that. The point here is that 
> it's hard as it is to see the pattern between different optimization levels 
> and compilers, but the more the code resembles a simple structured assignment 
> matrix, the easier it is to see it. With checking code like this in the 
> midst, it's easier to get lost.

Done.

Mike

Reply via email to