868b8cda7b
* builtins.def (BUILT_IN_PRINTF, BUILT_IN_FPRINTF): Changed from front-end builtins to normal builtins, using DEF_LIB_BUILTIN. (BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_FPRINTF_UNLOCKED): Changed from front-end to normal builtins, using DEF_EXT_LIB_BUILTIN. (DEF_FRONT_END_LIB_BUILTIN): Delete. (DEF_EXT_FRONT_END_LIB_BUILTIN): Delete. (BUILT_IN_FWRITE_UNLOCKED): Wrap long line. * builtins.c (build_string_literal): New function to construct a char* pointer to a string literal. (expand_builtin_fputs): Change 2nd argument from "int ignore" to "rtx target" to be consistent with other expand_builtin_* functions. Change 3rd argument from "int unlocked" to "bool unlocked". (expand_builtin_printf): Rewrite of c_expand_builtin_printf from c-common.c to avoid front-end dependencies. Optimize printf("") as a no-op when the result isn't required. Handle embedded NULs in format string. (expand_builtin_fprintf): A rewrite of c_expand_builtin_fprintf from c-common.c to avoid front-end dependencies. Likewise, optimize fprintf(fp,"") as a no-op when the result isn't required, evaluating fp for side-effects. Handle embedded NULs in format string. (expand_builtin_sprintf): Fix typo. (expand_builtin): Don't expand BUILT_IN_FPRINT{,_UNLOCKED} when not optimizing. Adjust calls of expand_builtin_fputs to match the API change. Expand BUILT_IN_PRINTF and BUILT_IN_PRINTF_UNLOCKED using expand_builtin_printf. Likewise, expand BUILT_IN_FPRINTF_UNLOCKED and BUILT_IN_FPRINTF using expand_builtin_fprintf. * c-common.c (is_valid_printf_arglist): Delete. (c_expand_builtin): Delete. (c_expand_builtin_printf): Moved to builtins.c. Delete. (c_expand_builtin_fprintf): Moved to builtins.c. Delete. (c_expand_expr): No longer treat CALL_EXPRs specially. (CALLED_AS_BUILT_IN): Delete. From-SVN: r69760 |
||
---|---|---|
boehm-gc | ||
config | ||
contrib | ||
fastjar | ||
gcc | ||
include | ||
INSTALL | ||
intl | ||
libf2c | ||
libffi | ||
libiberty | ||
libjava | ||
libobjc | ||
libstdc++-v3 | ||
maintainer-scripts | ||
zlib | ||
.cvsignore | ||
ABOUT-NLS | ||
ChangeLog | ||
config-ml.in | ||
config.guess | ||
config.if | ||
config.rpath | ||
config.sub | ||
configure | ||
configure.in | ||
COPYING | ||
COPYING.LIB | ||
install-sh | ||
libtool.m4 | ||
ltcf-c.sh | ||
ltcf-cxx.sh | ||
ltcf-gcj.sh | ||
ltconfig | ||
ltmain.sh | ||
MAINTAINERS | ||
Makefile.def | ||
Makefile.in | ||
Makefile.tpl | ||
missing | ||
mkdep | ||
mkinstalldirs | ||
move-if-change | ||
README | ||
symlink-tree | ||
ylwrap |
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.