diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 278d03f38e0..bfca2171be2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2010-03-22 Rainer Orth + + PR target/38085 + * config/i386/i386.c (x86_function_profiler) + [!NO_PROFILE_COUNTERS]: Fix typo. + * config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call + instead of callq. + 2010-03-22 Janis Johnson Rainer Orth diff --git a/gcc/config/i386/gmon-sol2.c b/gcc/config/i386/gmon-sol2.c index d20762156a6..e0923a0770f 100644 --- a/gcc/config/i386/gmon-sol2.c +++ b/gcc/config/i386/gmon-sol2.c @@ -268,7 +268,7 @@ asm(".globl _mcount\n" FROMPCINDEX (via the frame pointer. */ "\tmovq\t0x38(%rsp),%rdi\n" "\tmovq\t0x8(%rbp),%rsi\n" - "\tcallq\tinternal_mcount\n" + "\tcall\tinternal_mcount\n" /* Restore the saved registers. */ "\tmovq\t0x30(%rsp),%r9\n" "\tmovq\t0x28(%rsp),%r8\n" diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 9cc66617e86..56207657ba1 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -26369,7 +26369,7 @@ x86_function_profiler (FILE *file, int labelno ATTRIBUTE_UNUSED) if (TARGET_64BIT) { #ifndef NO_PROFILE_COUNTERS - fprintf (file, "\tleaq\t" LPREFIX "P%d@(%%rip),%%r11\n", labelno); + fprintf (file, "\tleaq\t" LPREFIX "P%d(%%rip),%%r11\n", labelno); #endif if (DEFAULT_ABI == SYSV_ABI && flag_pic) diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index ec9d8d2dc3c..db348ba349c 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,13 @@ +2010-03-22 Rainer Orth + + PR target/38085 + * config/i386/t-sol2 ($(T)gmon.o): Use CFLAGS instead of + MULTILIB_CFLAGS. + ($(T)gcrt1.o): Likewise. + ($(T)crt1.o): Likewise. + ($(T)crti.o): Likewise. + ($(T)crtn.o): Likewise. + 2010-03-01 Ralf Wildenhues PR other/42980 diff --git a/libgcc/config/i386/t-sol2 b/libgcc/config/i386/t-sol2 index 24b7c7c10f4..351d7fb90e7 100644 --- a/libgcc/config/i386/t-sol2 +++ b/libgcc/config/i386/t-sol2 @@ -1,6 +1,6 @@ # gmon build rule: $(T)gmon.o: $(gcc_srcdir)/config/i386/gmon-sol2.c $(GCC_PASSES) $(CONFIG_H) - $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) \ + $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(CFLAGS) \ -c $(gcc_srcdir)/config/i386/gmon-sol2.c -o $(T)gmon.o # Assemble startup files. @@ -9,16 +9,16 @@ $(T)gmon.o: $(gcc_srcdir)/config/i386/gmon-sol2.c $(GCC_PASSES) $(CONFIG_H) # the comments with sed. This bug may only be in the Early Access releases. $(T)gcrt1.o: $(gcc_srcdir)/config/i386/sol2-gc1.asm $(GCC_PASSES) sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-gc1.asm >gcrt1.s - $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)gcrt1.o gcrt1.s + $(GCC_FOR_TARGET) $(CFLAGS) -c -o $(T)gcrt1.o gcrt1.s $(T)crt1.o: $(gcc_srcdir)/config/i386/sol2-c1.asm $(GCC_PASSES) sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-c1.asm >crt1.s - $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crt1.o crt1.s + $(GCC_FOR_TARGET) $(CFLAGS) -c -o $(T)crt1.o crt1.s $(T)crti.o: $(gcc_srcdir)/config/i386/sol2-ci.asm $(GCC_PASSES) sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-ci.asm >crti.s - $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crti.o crti.s + $(GCC_FOR_TARGET) $(CFLAGS) -c -o $(T)crti.o crti.s $(T)crtn.o: $(gcc_srcdir)/config/i386/sol2-cn.asm $(GCC_PASSES) sed -e '/^!/d' <$(gcc_srcdir)/config/i386/sol2-cn.asm >crtn.s - $(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) -c -o $(T)crtn.o crtn.s + $(GCC_FOR_TARGET) $(CFLAGS) -c -o $(T)crtn.o crtn.s # We need to use -fPIC when we are using gcc to compile the routines in # crtstuff.c. This is only really needed when we are going to use gcc/g++