This patch will ensure the modules continues to suppress the
optimization, based on strict aliasing rules, after the option
is removed from $CWARNFLAGS. There is no change in the object
code produced.

There is no attempt to determine if the module should or should not
have such an optimization. A new warning (-Wstrict-aliasing=2)
has been added to the XORG_CWARNFLAGS macro to help  find code
that may interfere with optimization.
---
 src/Makefile.am      |   11 +++++++++--
 src/xvmc/Makefile.am |   12 ++++++++++--
 uxa/Makefile.am      |    6 +++++-
 3 files changed, 24 insertions(+), 5 deletions(-)

diff --git a/src/Makefile.am b/src/Makefile.am
index b4bafbd..54c86fa 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -26,8 +26,15 @@ SUBDIRS = xvmc render_program
 # _ladir passes a dummy rpath to libtool so the thing will actually link
 # TODO: -nostdlib/-Bstatic/-lgcc platform magic, not installing the .a, etc.
 
-AM_CFLAGS = @CWARNFLAGS@ @XORG_CFLAGS@ @DRM_CFLAGS@ @DRI_CFLAGS@ \
-       @PCIACCESS_CFLAGS@ -I$(top_srcdir)/uxa 
-I$(top_srcdir)/src/render_program
+AM_CFLAGS = \
+       $(CWARNFLAGS) \
+       -fno-strict-aliasing \
+       $(XORG_CFLAGS) \
+       $(DRM_CFLAGS) \
+       $(DRI_CFLAGS) \
+       $(PCIACCESS_CFLAGS) \
+       -I$(top_srcdir)/uxa \
+       -I$(top_srcdir)/src/render_program
 
 intel_drv_la_LTLIBRARIES = intel_drv.la
 intel_drv_la_LDFLAGS = -module -avoid-version
diff --git a/src/xvmc/Makefile.am b/src/xvmc/Makefile.am
index be8824b..ffbd335 100644
--- a/src/xvmc/Makefile.am
+++ b/src/xvmc/Makefile.am
@@ -7,8 +7,16 @@ SUBDIRS = shader
 libI810XvMC_la_SOURCES = I810XvMC.c \
                         I810XvMC.h
 
-libI810XvMC_la_CFLAGS = @CWARNFLAGS@ @XORG_CFLAGS@ @DRM_CFLAGS@ @DRI_CFLAGS@ \
-       -I$(top_srcdir)/src -DTRUE=1 -DFALSE=0
+libI810XvMC_la_CFLAGS = \
+       $(CWARNFLAGS) \
+       -fno-strict-aliasing \
+       $(XORG_CFLAGS) \
+       $(DRM_CFLAGS) \
+       $(DRI_CFLAGS) \
+       -I$(top_srcdir)/src \
+       -DTRUE=1 \
+       -DFALSE=0
+
 libI810XvMC_la_LDFLAGS = -version-number 1:0:0
 libI810XvMC_la_LIBADD = @DRI_LIBS@ @DRM_LIBS@ @XVMCLIB_LIBS@
 
diff --git a/uxa/Makefile.am b/uxa/Makefile.am
index 0dfad48..c999ffe 100644
--- a/uxa/Makefile.am
+++ b/uxa/Makefile.am
@@ -7,7 +7,11 @@ SOLARIS_ASM_CFLAGS=""
 INCLUDES = \
        $(XORG_INCS)
 
-AM_CFLAGS = $(CWARNFLAGS) $(XORG_CFLAGS) $(DIX_CFLAGS)
+AM_CFLAGS = \
+       $(CWARNFLAGS) \
+       -fno-strict-aliasing \
+       $(XORG_CFLAGS) \
+       $(DIX_CFLAGS)
 
 libuxa_la_SOURCES = \
        uxa.c \
-- 
1.6.0.4

_______________________________________________
xorg-devel mailing list
[email protected]
http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to