t-msp430 (LIB2ADD): Remove mpy.c

libgcc/
	* config/msp430/t-msp430 (LIB2ADD): Remove mpy.c
	(mpy.o): New rule.
	(libmul_none.a): Add mpy.o

	gcc/testsuite/
	* gcc.target/msp430/mul_f5_muldef.c: New test.

From-SVN: r244564
This commit is contained in:
Joe Seymour 2017-01-18 03:56:10 +00:00 committed by DJ Delorie
parent 49947b33ff
commit 4701fba31c
3 changed files with 23 additions and 2 deletions

View File

@ -1,3 +1,7 @@
2017-01-17 Joe Seymour <joe.s@somniumtech.com>
* gcc.target/msp430/mul_f5_muldef.c: New test.
2017-01-17 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/79004

View File

@ -0,0 +1,15 @@
/* { dg-do link } */
/* { dg-options "-mhwmult=f5series" } */
/* This program used to result in a multiple definition error:
libmul_f5.a(lib2hw_mul_f5.o): In function `__mulhi2_f5':
(.text.__mulhi2_f5+0x0): multiple definition of `__mspabi_mpyi'
libgcc.a(mpy.o):mpy.c:(.text.__mulhi3+0x0): first defined here */
#include <stdio.h>
int main (void)
{
printf ("%d", 430);
}

View File

@ -30,7 +30,6 @@ LIB2ADD = \
$(srcdir)/config/msp430/lib2mul.c \
$(srcdir)/config/msp430/lib2shift.c \
$(srcdir)/config/msp430/epilogue.S \
$(srcdir)/config/msp430/mpy.c \
$(srcdir)/config/msp430/slli.S \
$(srcdir)/config/msp430/srai.S \
$(srcdir)/config/msp430/srli.S \
@ -43,6 +42,9 @@ LIB2ADD = \
HOST_LIBGCC2_CFLAGS += -Os -ffunction-sections -fdata-sections -mhwmult=none
mpy.o: $(srcdir)/config/msp430/mpy.c
$(gcc_compile) $< -c
lib2_mul_none.o: $(srcdir)/config/msp430/lib2mul.c
$(gcc_compile) $< -c -DMUL_NONE
@ -58,7 +60,7 @@ lib2hw_mul_32.o: $(srcdir)/config/msp430/lib2hw_mul.S
lib2hw_mul_f5.o: $(srcdir)/config/msp430/lib2hw_mul.S
$(gcc_compile) $< -c -DMUL_F5
libmul_none.a: lib2_mul_none.o
libmul_none.a: lib2_mul_none.o mpy.o
$(AR_CREATE_FOR_TARGET) $@ $(filter %.o,$^)
libmul_16.a: lib2hw_mul_16.o lib2_mul_16bit.o