Go to file
Richard Henderson 7d69de618e c-cppbuiltin.c (c_cpp_builtins): Add __SSP_ALL__ and __SSP__.
* c-cppbuiltin.c (c_cpp_builtins): Add __SSP_ALL__ and __SSP__.
	* cfgexpand.c: Include params.h.
	(has_protected_decls, has_short_buffer): New.
	(expand_stack_vars): Take a predicate to determine what to expand.
	(defer_stack_allocation): True when flag_stack_protect on.
	(SPCT_HAS_LARGE_CHAR_ARRAY, SPCT_HAS_SMALL_CHAR_ARRAY): New.
	(SPCT_HAS_ARRAY, SPCT_HAS_AGGREGATE): New.
	(stack_protect_classify_type, stack_protect_decl_phase): New.
	(stack_protect_decl_phase_1, stack_protect_decl_phase_2): New.
	(add_stack_protection_conflicts, create_stack_guard): New.
	(expand_used_vars): Add stack protection logic.
	(tree_expand_cfg): Likewise.
	* common.opt (Wstack-protector): New.
	(fstack-protector, fstack-protector-all): New.
	* function.c: Include predict.h.
	(assign_parm_adjust_stack_rtl): Zap stack_parm when stack protect
	wants to copy the parameter into the stack frame.
	(stack_protect_prologue, stack_protect_epilogue): New.
	(expand_function_end): Call stack_protect_epilogue.  Do
	sjlj_emit_function_exit_after after naked_return_label.
	* function.h (struct function): Add stack_protect_guard.
	* params.def (PARAM_SSP_BUFFER_SIZE): New.
	* toplev.c (process_options): Disable flag_stack_protect and/or
	warn_stack_protect based on FRAME_GROWS_DOWNWARD.
	* tree.h (stack_protect_prologue): Declare.

	* target-def.h (TARGET_STACK_PROTECT_GUARD): New.
	(TARGET_STACK_PROTECT_FAIL): New.
	(TARGET_INITIALIZER): Add them.
	* target.h (struct gcc_target): Add stack_protect_guard and
	stack_protect_fail.
	* targhooks.c: Include ggc.h, gty header.
	(stack_chk_guard_decl, default_stack_protect_guard): New.
	(stack_chk_fail_decl, default_external_stack_protect_fail): New.
	(default_hidden_stack_protect_fail): New.
	* targhooks.h (default_stack_protect_guard): Declare.
	(default_external_stack_protect_fail): Declare.
	(default_hidden_stack_protect_fail): Declare.
	* config/i386/i386.c (TARGET_STACK_PROTECT_FAIL): New.
	* config/i386/i386.md (UNSPEC_SP_SET, UNSPEC_SP_TEST): New.
	(trap): Use ud2.
	(conditional_trap, conditional_trap_1): Remove.
	(stack_protect_set, stack_protect_set_si, stack_protect_set_di): New.
	(stack_protect_test, stack_protect_test_si, stack_protect_test_di): New.
	* doc/md.texi (stack_protect_set, stack_protect_test): New.
	* doc/tm.texi (TARGET_STACK_PROTECT_GUARD): New.
	(TARGET_STACK_PROTECT_FAIL): New.

	* libgcc-std.ver (GCC_4.1.0): New.
	* libgcc.h (__stack_chk_guard): Declare.
	(__stack_chk_fail, __stack_chk_fail_local): Declare.
	* libgcc2.c (L_stack_chk, L_stack_chk_local): New.
	* mklibgcc.in (lib2funcs): Add them.

From-SVN: r101348
2005-06-27 09:41:16 +02:00
boehm-gc os_dep.c: Add FreeBSD/PowerPC bits. 2005-06-15 23:25:54 +02:00
config re PR libgcj/19877 (sometimes reconfiguring leads to incorrect config.h) 2005-06-14 20:05:59 +00:00
contrib btest-gcc.sh: Add support for option --add-passes-despite-regression. 2005-06-07 07:42:22 +00:00
fastjar configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS. 2005-05-18 01:38:46 +00:00
fixincludes inclhack.def (AAB_darwin7_9_long_double_funcs): New. 2005-06-24 23:43:15 +00:00
gcc c-cppbuiltin.c (c_cpp_builtins): Add __SSP_ALL__ and __SSP__. 2005-06-27 09:41:16 +02:00
gnattools re PR ada/19959 (Can't compile gnattools for the cross targets) 2005-03-30 10:56:55 +02:00
include Index: include/ChangeLog 2005-06-21 00:24:59 +00:00
INSTALL
intl Update the address and telephone number of the FSF organization 2005-05-13 08:03:47 +00:00
libada Fix ada enabled "make html". 2005-04-27 18:39:03 -07:00
libcpp * tr.po, vi.po: Update. 2005-06-18 22:50:11 +01:00
libffi re PR libffi/21943 (O32 libffi.so fails to link on IRIX 6) 2005-06-15 00:10:05 +00:00
libgfortran 2005-06-24 Jerry DeLisle <jvdelisle@verizon.net> 2005-06-27 01:27:18 +00:00
libiberty Index: include/ChangeLog 2005-06-21 00:24:59 +00:00
libjava xfails: Updated to reflect current state of mauve and libjava. 2005-06-26 22:41:31 +02:00
libmudflap * testsuite/libmudflap.c/externs-1.c (main): Add return statement. 2005-06-19 16:01:03 +00:00
libobjc NXConstStr.h, [...]: Do not include Objective-C headers as system headers. 2005-06-08 15:13:17 +00:00
libstdc++-v3 re PR libstdc++/22109 (/home/dave/opt/gnu/bin/ld: BFD 2.16.91 20050612 internal error) 2005-06-23 18:49:00 +02:00
maintainer-scripts crontab: Spread snapshot building more evenly throughout the week. 2005-05-21 21:56:24 +00:00
zlib re PR libgcj/19877 (sometimes reconfiguring leads to incorrect config.h) 2005-06-14 20:05:59 +00:00
.cvsignore
ABOUT-NLS
ChangeLog Makefile.def (stagefeedback): Come after profile. 2005-06-23 07:31:23 +00:00
ChangeLog.tree-ssa
compile install-sh, compile: Import from automake. 2004-11-16 01:04:30 +00:00
config-ml.in re PR bootstrap/18033 (--disable-aix64 doesn't remove ppc64 from multilib list) 2005-01-12 19:47:56 -05:00
config.guess config.guess, config.sub: Import from savannnah. 2004-11-16 00:57:01 +00:00
config.rpath
config.sub config.sub: Add cases for the Renesas m32c. 2005-06-02 20:16:32 -04:00
configure configure.in: Enable target-libffi again for *-*-linux* and *-*-elf. 2005-06-07 09:32:14 +00:00
configure.in configure.in: Enable target-libffi again for *-*-linux* and *-*-elf. 2005-06-07 09:32:14 +00:00
COPYING
COPYING.LIB
depcomp top level: 2005-06-13 08:26:05 +00:00
install-sh install-sh, config.sub: Import from upstream. 2005-01-18 01:20:48 +00:00
libtool.m4 libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use quotes on lt_cv_sys_max_cmd_len for now. 2005-05-10 01:31:58 +00:00
ltcf-c.sh ltconfig: Define file_list_spec. 2005-05-05 11:04:39 -04:00
ltcf-cxx.sh ltconfig: Define file_list_spec. 2005-05-05 11:04:39 -04:00
ltcf-gcj.sh ltconfig: Define file_list_spec. 2005-05-05 11:04:39 -04:00
ltconfig ltconfig: Define file_list_spec. 2005-05-05 11:04:39 -04:00
ltmain.sh ltconfig: Define file_list_spec. 2005-05-05 11:04:39 -04:00
MAINTAINERS * MAINTAINERS: Update my email address. 2005-06-13 19:06:49 +00:00
Makefile.def Makefile.def (stagefeedback): Come after profile. 2005-06-23 07:31:23 +00:00
Makefile.in Makefile.def (stagefeedback): Come after profile. 2005-06-23 07:31:23 +00:00
Makefile.tpl Makefile.def (stagefeedback): Come after profile. 2005-06-23 07:31:23 +00:00
missing
mkdep
mkinstalldirs
move-if-change
README
README.SCO * README.SCO: Update the URL. 2005-05-08 17:49:46 +00:00
symlink-tree
ylwrap * ylwrap: Import from Automake 1.9.5. 2005-05-15 18:17:10 +00:00

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the file COPYING
for copying permission.  The manuals, and some of the runtime
libraries, are under different terms; see the individual source files
for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs.html for how to report bugs usefully.