freebsd-dev/contrib
David E. O'Brien a6d80351b7 Re-initialize gp after a jsr.
When rtld runs the .fini section in a shared lib (C++), the code in
question from .../contrib/gdb/config/alpha/crtbegin.asm first calls
__do_globals_dtors_aux and then __do_frame_takedown.  Unfortunately, the
value of gp after a jsr is undefined and in this case had changed from before
the call, probably as a result of calling code in some other shared library.
The normal calling convention for alpha is to re-initialize gp using
'ldgp gp,0(ra)' after a jsr instruction but in this case no such
re-initialization is done. This leads to a bogus value being read for the
address of __do_frame_takedown and a quick segfault.

Submitted by:   dfr
Obtained from:  GCC 3.0
2001-08-17 22:54:26 +00:00
..
amd mdoc(7) police: s/BSD/.Bx/ where appropriate. 2001-08-14 10:01:54 +00:00
awk Fix bug that causes gawk to choke when parsing long source files. 2000-09-04 10:42:19 +00:00
bc Fixed warning: 2001-07-12 07:35:06 +00:00
bind This commit was generated by cvs2svn to compensate for changes in r81340, 2001-08-09 06:05:46 +00:00
binutils This commit was generated by cvs2svn to compensate for changes in r80508, 2001-07-28 18:44:42 +00:00
bzip2 Virgin import (trimmed) of Bzip2 version 1.0.1. 2001-06-21 18:37:17 +00:00
com_err SEE ALSO is the special name, and should not be taken in quotes, 2001-02-16 11:35:39 +00:00
cpio Don't attempt to parse %c 2001-03-21 21:17:54 +00:00
cvs Revert part of the 1.11->1.11.1p1 change. Put the blank line back in 2001-08-13 21:21:13 +00:00
diff Also coerce diff(1) into working the other way (from no-\n to \n). 2000-09-15 11:35:16 +00:00
file This commit was generated by cvs2svn to compensate for changes in r80588, 2001-07-30 03:09:46 +00:00
gcc Re-initialize gp after a jsr. 2001-08-17 22:54:26 +00:00
gdb Remove the filename_completion_function() extern that conflicts with the 2001-04-14 01:49:32 +00:00
gperf Helper to trim extracted files for use when importing new versions of 2000-10-13 12:36:13 +00:00
groff MFV: New macro: .Ex. 2001-08-15 08:20:31 +00:00
ipfilter fix conflicts created by import 2001-07-28 12:08:15 +00:00
isc-dhcp Connect std{in,out,err} to *something* so that "hooks" scripts that write 2001-07-16 01:56:48 +00:00
less Merge vendor changes onto mainline. 2000-07-14 09:57:37 +00:00
libf2c Import of a GCC 2.96 snapshot taken from the trunk of the FSF GCC anoncvs 2000-12-14 21:42:21 +00:00
libio Virgin import of GCC 2.95.3's libio -- the C++ iostream facility. 2001-03-19 20:49:58 +00:00
libobjc Virgin import of GCC 2.95.3's libobjc 2001-03-19 20:56:11 +00:00
libpam Fix libpam's linker set stuff to use the new API (unbreak world), and get 2001-06-14 01:13:30 +00:00
libpcap Merge libpcap 0.6.2 2001-04-03 04:32:48 +00:00
libreadline Move manpages to their original location (cvs copy to doc) 2001-04-21 22:02:18 +00:00
libstdc++ Virgin import of GCC 2.95.3's libstdc++ 2001-03-19 20:51:52 +00:00
lukemftp Import of LukeM's ftp client, version 1.5. 2001-07-19 16:26:14 +00:00
lukemftpd Import of LukeM's ftpd version 1.1. 2001-07-19 16:25:08 +00:00
ncurses This commit was generated by cvs2svn to compensate for changes in r76732, 2001-05-17 08:39:21 +00:00
ntp Do not log every potential exploit attempt since a denial-of-service 2001-04-06 14:34:15 +00:00
nvi Fix an underflow resulting from the assumption !O_ISSET(sp, O_LEFTRIGHT) 2001-07-19 11:02:11 +00:00
opie Fix uninitialized "force" variable. 2001-08-13 19:43:14 +00:00
patch
perl5 Resolve conflicts. 2000-08-20 09:51:08 +00:00
pnpinfo mdoc(7) police: normalize .Nd. 2001-04-18 15:54:10 +00:00
sendmail Update FreeBSD import information 2001-08-01 01:36:17 +00:00
tcp_wrappers This commit was generated by cvs2svn to compensate for changes in r80260, 2001-07-24 09:05:00 +00:00
tcpdump Merge tcpdump 3.6.3 2001-07-23 23:15:44 +00:00
tcsh This commit was generated by cvs2svn to compensate for changes in r73393, 2001-03-03 23:45:43 +00:00
telnet Removal of following export controll related sentences: 2001-08-15 01:30:25 +00:00
texinfo Quietly delete duplicate Info entries with --quiet. 2000-01-24 16:05:17 +00:00
top Don't do unsafe activities inside signal handlers. Just set a flag and 2001-08-06 03:19:22 +00:00
traceroute Fetch the default maximum TTL value from the net.inet.ip.ttl MIB. 2001-06-06 16:12:59 +00:00