Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Aug 2016 13:59:21 +0000 (UTC)
From:      Sean Bruno <sbruno@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r304849 - projects/mips64-clang/contrib/gcc/config/mips
Message-ID:  <201608261359.u7QDxL1t034916@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sbruno
Date: Fri Aug 26 13:59:21 2016
New Revision: 304849
URL: https://svnweb.freebsd.org/changeset/base/304849

Log:
  Fixup build with llvm/clang:
  
  https://reviews.llvm.org/D23497 and the attached FreeBSD patch work together
  to fix this problem and should be sufficient so long as you don't have
  -save-temps or -via-file-asm in your compiler flags. The LLVM patch makes the
  .local directive work properly when assembling an ELF while the FreeBSD patch
  ensures the assembler never sees a forward-declared local label by declaring
  them in advance with .local. However, the LLVM patch currently breaks if you
  use -save-temps or -via-file-asm since MCAsmStreamer's implementation of .local
  doesn't do anything to the MCSymbol and only emits a .local directive. This
  causes the assembler to interpret it as an external symbol and emit the wrong
  jal expansion.
  
  Submitted by:	Daniel Sanders <Daniel.Sanders@imgtec.com>

Modified:
  projects/mips64-clang/contrib/gcc/config/mips/mips.h

Modified: projects/mips64-clang/contrib/gcc/config/mips/mips.h
==============================================================================
--- projects/mips64-clang/contrib/gcc/config/mips/mips.h	Fri Aug 26 12:37:36 2016	(r304848)
+++ projects/mips64-clang/contrib/gcc/config/mips/mips.h	Fri Aug 26 13:59:21 2016	(r304849)
@@ -2718,6 +2718,7 @@ while (0)
 	nop\n\
 1:	.cpload $31\n\
 	.set reorder\n\
+	.local " USER_LABEL_PREFIX #FUNC "\n\
 	jal " USER_LABEL_PREFIX #FUNC "\n\
 	" TEXT_SECTION_ASM_OP);
 #endif /* Switch to #elif when we're no longer limited by K&R C.  */
@@ -2729,6 +2730,7 @@ while (0)
 	bal 1f\n\
 	nop\n\
 1:	.set reorder\n\
+	.local " USER_LABEL_PREFIX #FUNC "\n\
 	.cpsetup $31, $2, 1b\n\
 	jal " USER_LABEL_PREFIX #FUNC "\n\
 	" TEXT_SECTION_ASM_OP);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201608261359.u7QDxL1t034916>