|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2] tools/Rules.mk: Don't optimize debug builds; add macro debugging information
On Mon, 2014-12-01 at 14:21 +0000, Euan Harris wrote:
> Tools debug builds are built with optimization level -O1, inherited from
> the CFLAGS definition in StdGNU.mk. Optimizations confuse the debugger,
> and the comment justifying -O1 in StdGNU.mk should not apply for a
> userspace library.
(For others, that comment reads: Less than -O1 produces bad code and
large stack frames)
> Disable optimization by appending -O0 to CFLAGS,
> which overrides the -O1 flag specified earlier.
>
> Also specify -g3, to add macro debugging information which allows
> gdb to expand macro invocations. This is useful as libxl uses many
> non-trivial macros.
>
> Signed-off-by: Euan Harris <euan.harris@xxxxxxxxxx>
>
> Changes since v1:
> * moved flag override to tools/Rules.mk so it affects all tools
> ---
> tools/Rules.mk | 5 +++++
> 1 files changed, 5 insertions(+), 0 deletions(-)
>
> diff --git a/tools/Rules.mk b/tools/Rules.mk
> index 87a56dc..7ef1ce5 100644
> --- a/tools/Rules.mk
> +++ b/tools/Rules.mk
> @@ -54,6 +54,11 @@ CFLAGS_libxenvchan = -I$(XEN_LIBVCHAN)
> LDLIBS_libxenvchan = $(SHLIB_libxenctrl) $(SHLIB_libxenstore)
> -L$(XEN_LIBVCHAN) -lxenvchan
> SHLIB_libxenvchan = -Wl,-rpath-link=$(XEN_LIBVCHAN)
>
> +ifeq ($(debug),y)
> +# Disable optimizations and debugging information for macros
^enable
... or else it looks like you are saying it should be turning of macro
debug info too. This is something which can be done on commit.
Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> +CFLAGS += -O0 -g3
> +endif
> +
> LIBXL_BLKTAP ?= $(CONFIG_BLKTAP2)
>
> ifeq ($(LIBXL_BLKTAP),y)
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |