svn commit: r269987 - stable/9/cddl/contrib/opensolaris/lib/libdtrace/common

Mark Johnston markj at FreeBSD.org
Thu Aug 14 16:45:03 UTC 2014


Author: markj
Date: Thu Aug 14 16:45:02 2014
New Revision: 269987
URL: http://svnweb.freebsd.org/changeset/base/269987

Log:
  MFC r257877:
  Don't try to use the 32-bit drti.o unless the data model is explicitly set
  to ILP32. Otherwise dtrace -G will attempt to use it on amd64 if it can't
  determine which data model to use, which happens when -64 is omitted and
  no object files are provided, e.g. with
  
  # dtrace -G -n BEGIN
  
  This would result in a linker error, but now works properly.
  
  Also remove an unnecessary #ifdef.

Modified:
  stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c
Directory Properties:
  stable/9/cddl/contrib/opensolaris/   (props changed)
  stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/   (props changed)

Modified: stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c
==============================================================================
--- stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c	Thu Aug 14 16:45:01 2014	(r269986)
+++ stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c	Thu Aug 14 16:45:02 2014	(r269987)
@@ -1790,7 +1790,7 @@ dtrace_program_link(dtrace_hdl_t *dtp, d
 		 * Arches which default to 64-bit need to explicitly use
 		 * the 32-bit library path.
 		 */
-		int use_32 = !(dtp->dt_oflags & DTRACE_O_LP64);
+		int use_32 = (dtp->dt_oflags & DTRACE_O_ILP32);
 #else
 		/*
 		 * Arches which are 32-bit only just use the normal
@@ -1805,9 +1805,7 @@ dtrace_program_link(dtrace_hdl_t *dtp, d
 		len = snprintf(&tmp, 1, fmt, dtp->dt_ld_path, file, tfile,
 		    drti) + 1;
 
-#if !defined(sun)
 		len *= 2;
-#endif
 		cmd = alloca(len);
 
 		(void) snprintf(cmd, len, fmt, dtp->dt_ld_path, file,


More information about the svn-src-stable-9 mailing list