diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b92dcd821a6edb1e475d93d6f1817e9bb331ce77..243c24713101f9f766aa9f3540082d8f6b06b4c2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2002-01-28  Paul Koning  <pkoning@equallogic.com>
+
+	* builtin-types.def (BT_FN_VOID_CONST_PTR_VAR): Replace
+	BT_FN_VOID_PTR_VAR.
+	* builtins.def (BUILT_IN_PREFETCH): Change first argument to be const.
+	* doc/extend.texi (__builtin_prefetch): Update documentation:
+	first argument is now const void ptr.
+
 2002-01-28  Kazu Hirata  <kazu@hxi.com>
 
 	* config/h8300/h8300-protos.h: Remove an unused prototype.
@@ -276,10 +284,10 @@ Fri Jan 25 20:43:56 CET 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-01-24  Aldy Hernandez  <aldyh@redhat.com>
 
-        * loop.c (emit_prefetch_instructions): Use the prefetch insn's
-        mode, not Pmode.
+	* loop.c (emit_prefetch_instructions): Use the prefetch insn's
+	mode, not Pmode.
 
-        * builtins.c (expand_builtin_prefetch): Same.
+	* builtins.c (expand_builtin_prefetch): Same.
 
 2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
 
@@ -300,7 +308,7 @@ Fri Jan 25 20:43:56 CET 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-01-24  Andris Pavenis  <pavenis@latnet.lv>
 
-        * config/i386/t-djgpp: Use NATIVE_SYSTEM_HEADER_DIR.
+	* config/i386/t-djgpp: Use NATIVE_SYSTEM_HEADER_DIR.
 
 2002-01-24  Nick Clifton  <nickc@cambridge.redhat.com>
 
@@ -346,9 +354,9 @@ Fri Jan 25 20:43:56 CET 2002  Jan Hubicka  <jh@suse.cz>
 
 2002-01-23  Aldy Hernandez  <aldyh@redhat.com>
 
-        * c-parse.in (parmlist_or_identifiers): Add maybe_attribute.
-        (parmlist_or_identifiers_1): Verify that only a parmlist follows
-        an attribute.
+	* c-parse.in (parmlist_or_identifiers): Add maybe_attribute.
+	(parmlist_or_identifiers_1): Verify that only a parmlist follows
+	an attribute.
 
 2002-01-23  Richard Henderson  <rth@redhat.com>
 
diff --git a/gcc/builtin-types.def b/gcc/builtin-types.def
index f24f5c7952435bdc380ed29499901e5c824cf603..6cefb322f204b761f07ba2242e6de6ccd6842cb9 100644
--- a/gcc/builtin-types.def
+++ b/gcc/builtin-types.def
@@ -167,8 +167,8 @@ DEF_FUNCTION_TYPE_VAR_0 (BT_FN_PTR_VAR, BT_PTR)
 
 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_VALIST_REF_VAR, 
 			 BT_VOID, BT_VALIST_REF)
-DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_PTR_VAR,
-			 BT_VOID, BT_PTR)
+DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_CONST_PTR_VAR,
+			 BT_VOID, BT_CONST_PTR)
 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_INT_CONST_STRING_VAR,
 	                 BT_INT, BT_CONST_STRING)
 
diff --git a/gcc/builtins.def b/gcc/builtins.def
index 7b58bef1ae156e010a54acfbd672333badd45d48..c6f6dc426f9c8334074c40ce484fdbf2bad9872e 100644
--- a/gcc/builtins.def
+++ b/gcc/builtins.def
@@ -356,7 +356,7 @@ DEF_GCC_BUILTIN(BUILT_IN_TRAP,
 		BT_FN_VOID)
 DEF_GCC_BUILTIN(BUILT_IN_PREFETCH,
 		"__builtin_prefetch",
-		BT_FN_VOID_PTR_VAR)
+		BT_FN_VOID_CONST_PTR_VAR)
 
 /* Stdio builtins.  */
 DEF_FALLBACK_BUILTIN(BUILT_IN_PUTCHAR,
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 48408332bc906ab47fea5d4b0c58a10c7f3afa45..ad88a2a83afc0451931588ee79d528542e471def 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -4592,7 +4592,7 @@ if (__builtin_expect (ptr != NULL, 1))
 when testing pointer or floating-point values.
 @end deftypefn
 
-@deftypefn {Built-in Function} void __builtin_prefetch (void *@var{addr}, ...)
+@deftypefn {Built-in Function} void __builtin_prefetch (const void *@var{addr}, ...)
 This function is used to minimize cache-miss latency by moving data into
 a cache before it is accessed.
 You can insert calls to @code{__builtin_prefetch} into code for which
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 6500056c84cdbdcb13f7d6ed35b2146d2c0f28d4..28a931bc2bb3c45a2c6f6c36b0b156cd01bf2b2d 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2002-01-28  Paul Koning  <pkoning@equallogic.com>
+
+	* gcc.c-torture/execute/builtin-prefetch-1.c: Changed first
+	argument to __builtin_prefetch to be const ptr.
+
 2002-01-28  Jakub Jelinek  <jakub@redhat.com>
 
 	* gcc.c-torture/compile/20020120-1.c: New test.
diff --git a/gcc/testsuite/gcc.c-torture/execute/builtin-prefetch-1.c b/gcc/testsuite/gcc.c-torture/execute/builtin-prefetch-1.c
index d6b7b599fdb00e8e123a98ae8ab8e4652cfce853..4ee05a94d9f63c159cca72583109eb2f95ed10bb 100644
--- a/gcc/testsuite/gcc.c-torture/execute/builtin-prefetch-1.c
+++ b/gcc/testsuite/gcc.c-torture/execute/builtin-prefetch-1.c
@@ -17,7 +17,7 @@ enum rw { read, write };
 int arr[10];
 
 void
-good_const (int *p)
+good_const (const int *p)
 {
   __builtin_prefetch (p, 0, 0);
   __builtin_prefetch (p, 0, 1);
@@ -30,7 +30,7 @@ good_const (int *p)
 }
 
 void
-good_enum (int *p)
+good_enum (const int *p)
 {
     __builtin_prefetch (p, read, none);
     __builtin_prefetch (p, read, low);
@@ -43,14 +43,14 @@ good_enum (int *p)
 }
 
 void
-good_expr (int *p)
+good_expr (const int *p)
 {
   __builtin_prefetch (p, 1 - 1, 6 - (2 * 3));
   __builtin_prefetch (p, 1 + 0, 1 + 2);
 }
 
 void
-good_vararg (int *p)
+good_vararg (const int *p)
 {
   __builtin_prefetch (p, 0, 3);
   __builtin_prefetch (p, 0);