diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 00e19c6d3f61d0f5194d6b0d353f2ddebed4335e..6213941e8179d655fde498fc3ebc105922f153a3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,38 @@
+2002-05-11  Zack Weinberg  <zack@codesourcery.com>
+
+	* config/rs6000/rs6000.c (rs6000_default_long_calls,
+	rs6000_longcall_switch, rs6000_set_default_type_attributes): New.
+	(TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Set it.
+	(rs6000_override_options): Handle -m(no-)longcall.
+	(init_cumulative_args, output_mi_thunk): Check for both
+	longcall and shortcall attributes on the function.
+	(rs6000_attribute_table): Add "shortcall".
+	(rs6000_handle_longcall_attribute): Update comment.
+	(altivec_expand_unop_builtin, altivec_expand_binop_builtin,
+	altivec_expand_ternop_builtin): Add default clauses to switches
+	to silence warnings.
+
+	* config/rs6000/rs6000.h: Declare rs6000_longcall_switch and
+	rs6000_default_long_calls.  Define REGISTER_TARGET_PRAGMAS.
+	(TARGET_OPTIONS): Add longcall and no-longcall.
+
+	* config/rs6000/rs6000.md (call_nonlocal_sysv,
+	call_value_nonlocal_sysv): Split by alternatives.  One pair
+	accepts only SYMBOL_REFs and rejects if CALL_LONG is set in
+	the call cookie.  The other pair accepts only LR/CTR and has
+	no restriction.
+
+	* config.gcc (rs6000-*-* | powerpc*-*-* trailer stanza):
+	Set c_target_objs, cxx_target_objs; add t-rs6000-c-rule to
+	tmake_file.
+	* config/rs6000/rs6000-c.c: New file.
+	* config/rs6000/t-rs6000-c-rule: New file.
+	* config/rs6000/rs6000-protos.c: Add multiple-include guard.
+	Prototype rs6000_pragma_longcall.
+
+	* doc/extend.texi: Document shortcall attribute.
+	* doc/invoke.texi: Document -mlongcall, -mno-longcall.
+
 2002-05-11  John David Anglin  <dave@hiauly1.hia.nrc.ca>
 
 	* reorg.c (dbr_schedule): Remove unnecessary test.