RE: [PATCH v2] powerpc: Update compilation flags with core specific options

2013-07-29 Thread Udma Catalin-Dan-B32721
  The assembler option is redundant if the -mcpu= flag is set.
  The patch fixes the kernel compilation problem for e5500/e6500
  when using gcc option -mcpu=e5500/e6500.
 
  Signed-off-by: Catalin Udma catalin.u...@freescale.com
  ---
  changes for v2:
 - update also KBUILD_AFLAGS with -mcpu and -msoft-float flags
 
  arch/powerpc/Makefile |   16 +++-
  1 files changed, 15 insertions(+), 1 deletions(-)
 
 Is the assembler redundant for older toolchains?
 
 - k
[CU] gcc defines the mapping from -mcpu to assembler options in file
gcc/config/rs6000/rs6000.h, like this:
%{mcpu=8540: -me500} \
%{mcpu=8548: -me500} \
%{mcpu=e300c2: -me300} \
%{mcpu=e300c3: -me300} \
%{mcpu=e500mc: -me500mc} \
%{mcpu=e500mc64: -me500mc64} \
%{mcpu=e5500: -me5500} \
%{mcpu=e6500: -me6500} \

I have checked this mapping from gcc 3.3 (where 8540 entry was added) to
3.4, 4.3, 4.4 and 4.8.1...The -Wa option is redundant for all these
older toolchains.
Catalin

___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


Re: [PATCH v2] powerpc: Update compilation flags with core specific options

2013-07-29 Thread Scott Wood

On 07/25/2013 06:54:14 AM, Catalin Udma wrote:

If CONFIG_E500 is enabled, the compilation flags are updated
specifying the target core -mcpu=e5500/e500mc/8540
Also remove -Wa,-me500, being incompatible with -mcpu=e5500/e6500
The assembler option is redundant if the -mcpu= flag is set.
The patch fixes the kernel compilation problem for e5500/e6500
when using gcc option -mcpu=e5500/e6500.

Signed-off-by: Catalin Udma catalin.u...@freescale.com
---
changes for v2:
- update also KBUILD_AFLAGS with -mcpu and -msoft-float flags

 arch/powerpc/Makefile |   16 +++-
 1 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 0624909..cb5cbe2 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -140,6 +140,21 @@ ifeq ($(CONFIG_6xx),y)
 KBUILD_CFLAGS  += -mcpu=powerpc
 endif

+ifeq ($(CONFIG_E500),y)
+ifeq ($(CONFIG_64BIT),y)
+KBUILD_CFLAGS  += -mcpu=e5500
+KBUILD_AFLAGS  += -mcpu=e5500 -msoft-float
+else
+ifeq ($(CONFIG_PPC_E500MC),y)
+KBUILD_CFLAGS  += -mcpu=e500mc
+KBUILD_AFLAGS  += -mcpu=e500mc -msoft-float
+else
+KBUILD_CFLAGS  += -mcpu=8540
+KBUILD_AFLAGS  += -mcpu=8540 -msoft-float
+endif
+endif
+endif


Instead of specifying -msoft-float here, shouldn't it go on the main  
KBUILD_AFLAGS in arch/powerpc/Makefile, right next to where it's added  
for KBUILD_CFLAGS?


-Scott
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


Re: [PATCH v2] powerpc: Update compilation flags with core specific options

2013-07-26 Thread Kumar Gala

On Jul 25, 2013, at 6:54 AM, Catalin Udma wrote:

 If CONFIG_E500 is enabled, the compilation flags are updated
 specifying the target core -mcpu=e5500/e500mc/8540
 Also remove -Wa,-me500, being incompatible with -mcpu=e5500/e6500
 The assembler option is redundant if the -mcpu= flag is set.
 The patch fixes the kernel compilation problem for e5500/e6500
 when using gcc option -mcpu=e5500/e6500.
 
 Signed-off-by: Catalin Udma catalin.u...@freescale.com
 ---
 changes for v2: 
- update also KBUILD_AFLAGS with -mcpu and -msoft-float flags
 
 arch/powerpc/Makefile |   16 +++-
 1 files changed, 15 insertions(+), 1 deletions(-)

Is the assembler redundant for older toolchains?

- k
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


[PATCH v2] powerpc: Update compilation flags with core specific options

2013-07-25 Thread Catalin Udma
If CONFIG_E500 is enabled, the compilation flags are updated
specifying the target core -mcpu=e5500/e500mc/8540
Also remove -Wa,-me500, being incompatible with -mcpu=e5500/e6500
The assembler option is redundant if the -mcpu= flag is set.
The patch fixes the kernel compilation problem for e5500/e6500
when using gcc option -mcpu=e5500/e6500.

Signed-off-by: Catalin Udma catalin.u...@freescale.com
---
changes for v2: 
- update also KBUILD_AFLAGS with -mcpu and -msoft-float flags
  
 arch/powerpc/Makefile |   16 +++-
 1 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 0624909..cb5cbe2 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -140,6 +140,21 @@ ifeq ($(CONFIG_6xx),y)
 KBUILD_CFLAGS  += -mcpu=powerpc
 endif
 
+ifeq ($(CONFIG_E500),y)
+ifeq ($(CONFIG_64BIT),y)
+KBUILD_CFLAGS  += -mcpu=e5500
+KBUILD_AFLAGS  += -mcpu=e5500 -msoft-float
+else
+ifeq ($(CONFIG_PPC_E500MC),y)
+KBUILD_CFLAGS  += -mcpu=e500mc
+KBUILD_AFLAGS  += -mcpu=e500mc -msoft-float
+else
+KBUILD_CFLAGS  += -mcpu=8540
+KBUILD_AFLAGS  += -mcpu=8540 -msoft-float
+endif
+endif
+endif
+
 # Work around a gcc code-gen bug with -fno-omit-frame-pointer.
 ifeq ($(CONFIG_FUNCTION_TRACER),y)
 KBUILD_CFLAGS  += -mno-sched-epilog
@@ -147,7 +162,6 @@ endif
 
 cpu-as-$(CONFIG_4xx)   += -Wa,-m405
 cpu-as-$(CONFIG_ALTIVEC)   += -Wa,-maltivec
-cpu-as-$(CONFIG_E500)  += -Wa,-me500
 cpu-as-$(CONFIG_E200)  += -Wa,-me200
 
 KBUILD_AFLAGS += $(cpu-as-y)
-- 
1.7.8


___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev