On 05/25/2015 12:47 PM, Ingo Molnar wrote: > > * Martin Liška wrote: > >> Currently, GCC optimizes -O6 same as -O3 level, thus change the value >> to -O6. > > s/to -O6 > to -O3 > >> Right optimize debugging experience is given by passing -Og to >> compiler. Assign default value for pointers that are identified by >> compiler as non-initialized. > > s/Right optimize debugging experience is given/ > Correct debugging experience is given/ > > s/identified by compiler > identified by the compiler > >> ifeq ($(DEBUG),0) >> - CFLAGS += -O6 >> + CFLAGS += -O3 >> +else >> + CFLAGS += $(call cc-option,-Og,-O0) >> endif > >> +# try-run >> +# Usage: option = $(call try-run, $(CC)...-o "$$TMP",option-ok,otherwise) >> +# Exit code chooses option. "$$TMP" is can be used as temporary file and >> +# is automatically cleaned up. >> +try-run = $(shell set -e; \ >> + TMP="$(TMPOUT).$$$$.tmp"; \ >> + TMPO="$(TMPOUT).$$$$.o"; \ >> + if ($(1)) >/dev/null 2>&1; \ >> + then echo "$(2)"; \ >> + else echo "$(3)"; \ >> + fi; \ >> + rm -f "$$TMP" "$$TMPO") >> + >> +# cc-option >> +# Usage: cflags-y += $(call cc-option,-march=winchip-c6,-march=i586) >> + >> +cc-option = $(call try-run,\ >> + $(CC) $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS) $(1) -c -x c /dev/null -o "$$TMP",$(1),$(2)) > > Looks good to me! > > Acked-by: Ingo Molnar > > Thanks, > > Ingo > Thank you for review. This is final version of the patch, where I appended your acknowledgment. Martin