summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger A. Faulkner <Roger.Faulkner@Sun.COM>2008-09-29 15:25:16 -0700
committerRoger A. Faulkner <Roger.Faulkner@Sun.COM>2008-09-29 15:25:16 -0700
commitd9b365efa57e560c120a68d37339e584d8bf04c0 (patch)
tree8e8b7ab817ede8d1f59945ca6915ea423439ed92
parent817697f4a28f704a2d88ace09406d985aa3a8549 (diff)
downloadillumos-gate-d9b365efa57e560c120a68d37339e584d8bf04c0.tar.gz
6753520 compiler switch to SS12 causes sparc build breakage in usr/src/psm/stand/bootblks
-rw-r--r--usr/src/psm/stand/bootblks/Makefile.12754
-rw-r--r--usr/src/tools/tokenize/asmsubr.s20
-rw-r--r--usr/src/tools/tokenize/forth_preload.c8
3 files changed, 21 insertions, 11 deletions
diff --git a/usr/src/psm/stand/bootblks/Makefile.1275 b/usr/src/psm/stand/bootblks/Makefile.1275
index 882553a154..c0585d18a7 100644
--- a/usr/src/psm/stand/bootblks/Makefile.1275
+++ b/usr/src/psm/stand/bootblks/Makefile.1275
@@ -19,8 +19,6 @@
# CDDL HEADER END
#
#
-#ident "%Z%%M% %I% %E% SMI"
-#
# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
@@ -40,7 +38,7 @@ RD_FCODE = rd.fcode
MKBB = mkbb
MKBB_SH = $(BASEDIR)/common/mkbb.sh
-MKBB.fcode = $(MKBB) $(MKBBFLAGS)
+MKBB.fcode = ./$(MKBB) $(MKBBFLAGS)
%.fcode: $(BASEDIR)/common/%.fth
$(TOKENIZE) $<
diff --git a/usr/src/tools/tokenize/asmsubr.s b/usr/src/tools/tokenize/asmsubr.s
index 0bf843f90d..b1969f72b6 100644
--- a/usr/src/tools/tokenize/asmsubr.s
+++ b/usr/src/tools/tokenize/asmsubr.s
@@ -2,9 +2,8 @@
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
@@ -19,18 +18,27 @@
*
* CDDL HEADER END
*/
+
/*
- * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
.file "asmsubr.s"
#define _ASM 1
#include <sys/asm_linkage.h>
+ ENTRY(get_g5)
+ retl
+ mov %g5, %o0
+ SET_SIZE(get_g5)
+
+ ENTRY(set_g5)
+ retl
+ mov %o0, %g5
+ SET_SIZE(set_g5)
+
ENTRY(get_g7)
.register %g7, #scratch
retl
diff --git a/usr/src/tools/tokenize/forth_preload.c b/usr/src/tools/tokenize/forth_preload.c
index 7a712c583f..072bdd7e4c 100644
--- a/usr/src/tools/tokenize/forth_preload.c
+++ b/usr/src/tools/tokenize/forth_preload.c
@@ -24,8 +24,6 @@
* Use is subject to license terms.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
/*
* This preload library must be applied to forth after libthread is
* folded into libc because forth/tokenize.exe is not ABI compliant; it
@@ -198,6 +196,9 @@ extern void *dlsym(void *handle, const char *name);
static long global_g7 = -1;
+long get_g5(void);
+void set_g5(long);
+
long get_g7(void);
void set_g7(long);
@@ -206,9 +207,11 @@ callfunc(struct intpose *ip,
long a0, long a1, long a2, long a3, long a4, long a5)
{
realfunc_t realfunc;
+ long my_g5;
long my_g7;
long rv;
+ my_g5 = get_g5();
my_g7 = get_g7();
if (global_g7 == -1)
global_g7 = my_g7;
@@ -217,6 +220,7 @@ callfunc(struct intpose *ip,
ip->realfunc = realfunc =
(realfunc_t)dlsym(RTLD_NEXT, ip->fname);
rv = realfunc(a0, a1, a2, a3, a4, a5);
+ set_g5(my_g5);
set_g7(my_g7);
return (rv);
}