diff --git a/src/acconfig.h b/src/acconfig.h
index 629819abff51f8b519528921cab0e60116f0de20..f39cbc585d1a84449588c0fb32383aa8ee6e7c2e 100644
--- a/src/acconfig.h
+++ b/src/acconfig.h
@@ -1,5 +1,5 @@
 /*
- * $Id: acconfig.h,v 1.92 2001/07/16 19:48:56 hubbe Exp $
+ * $Id: acconfig.h,v 1.93 2001/08/15 14:42:10 marcus Exp $
  */
 #ifndef MACHINE_H
 #define MACHINE_H
@@ -299,6 +299,9 @@
 /* What alignment do 32-bit integers need */
 #define PIKE_INT32_ALIGNMENT 4
 
+/* Assembler prefix for general purpose registers */
+#undef PIKE_CPU_REG_PREFIX
+
 /* Number of possible filedesriptors */
 #define MAX_OPEN_FILEDESCRIPTORS 1024
 
diff --git a/src/configure.in b/src/configure.in
index fbb2404e67048e61493d3525d4da12fdb9a46637..64cf29b93892c1b1b51ba661cad6c0b632f3e3f5 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -1,4 +1,4 @@
-AC_REVISION("$Id: configure.in,v 1.540 2001/07/20 10:20:09 mast Exp $")
+AC_REVISION("$Id: configure.in,v 1.541 2001/08/15 14:42:10 marcus Exp $")
 AC_INIT(interpret.c)
 AC_CONFIG_HEADER(machine.h)
 
@@ -3212,6 +3212,31 @@ pike_cv_hardware_alignment=4
 AC_MSG_RESULT($pike_cv_hardware_alignment)
 AC_DEFINE_UNQUOTED(PIKE_INT32_ALIGNMENT,$pike_cv_hardware_alignment)
 
+########################################################################
+
+if test yes = "$with_machine_code"; then
+AC_MSG_CHECKING(register name convention)
+AC_CACHE_VAL(pike_cv_cpu_reg_prefix,
+[
+  for pike_cv_cpu_reg_prefix in "default" "" "r" "%%" "%%r" "unknown"; do
+    AC_TRY_COMPILE([
+#define REGPREFIX "$pike_cv_cpu_reg_prefix"
+], [
+#if defined(__ppc__) || defined(_POWER)
+	__asm__ __volatile__(" li "REGPREFIX"11,1");
+#else
+	; /* Don't need to find out */
+#endif
+    ],[break])
+  done
+])
+case "$pike_cv_cpu_reg_prefix" in
+  default|unknown) AC_MSG_RESULT($pike_cv_cpu_reg_prefix);;
+  *) AC_MSG_RESULT(${pike_cv_cpu_reg_prefix}0)
+     AC_DEFINE_UNQUOTED(PIKE_CPU_REG_PREFIX,"$pike_cv_cpu_reg_prefix");;
+esac
+else :; fi
+
 ########################################################################
 MY_CHECK_FUNCTION(fork,
 [