gcc/gcc
Mark Mitchell 41a972a956 rtl.h (rtx_function): New type.
* rtl.h (rtx_function): New type.
	(for_each_rtx): New function.
	* rtlanal.c (for_each_rtx): Define it.
	* recog.c (change_t): New type.
	(change_objects, change_old_codes, change_locs, change_olds):
	Replace with ...
	(changes): New variable.
	(validate_change): Dynamically allocate room for more changes, if
	necessary.  Uses changes array instead of change_objects, etc.
	(apply_change_group):  Use changes array instead of
	change_objects, etc.
	* loop.c (loop_mem_info): New type.
	(loop_mems): New variable.
	(loop_mems_idx): Likewise.
	(looop_mems_allocated): Likewise.
	(scan_loop): Remove nregs parameter.
	(next_insn_in_loop): New function.
	(load_mems_and_recount_loop_regs_set): Likewise.
	(load_mems): Likewise.
	(insert_loop_mem): Likewise.
	(replace_loop_mem): Likewise.
	(replace_label): Likewise.
	(INSN_IN_RANGE_P): New macro.
	(loop_optimize): Don't pass max_reg_num() to scan_loop.
	(scan_loop): Remove nregs parameter, compute it after any new
	registers are created by load_mems.  Use INSN_IN_RANGE_P and
	next_insn_in_loop rather than expanding them inline.  Call
	load_mems to load memory into pseudos, if appropriate.
	(prescan_loop): Figure out whether or not there are jumps from the
	loop to targets other than the label immediately following the
	loop.  Call insert_loop_mem to notice all the MEMs used in the
	loop, if it could be safe to pull MEMs into REGs for the duration
	of the loop.
	(strength_reduce): Use next_insn_in_loop.  Tweak comments.

From-SVN: r21845
1998-08-19 06:30:47 -06:00
..
config sparc.md (negtf2_notv9 split): Give NEG SFmode. 1998-08-19 02:02:26 -07:00
cp cp-tree.h (enter_scope_of): New function. 1998-08-17 22:33:58 +00:00
f Make-lang.in: Add several "else true" clauses to deal with lame systems. 1998-08-18 14:42:49 -06:00
ginclude va-alpha.h (va_list): Use a typedef, not a define. 1998-08-01 11:00:15 -07:00
intl Initial revision 1998-08-02 00:12:03 -06:00
objc
po Initial revision 1998-08-02 00:20:56 -06:00
testsuite * gcc.c-torture/execute/*.x: Some updates for the h8300 targets. 1998-08-18 12:22:32 -06:00
.cvsignore
.gdbinit
ABOUT-GCC-NLS Initial revision 1998-08-02 00:46:43 -06:00
ABOUT-NLS
acconfig.h
aclocal.m4
alias.c i386.h (MODES_TIEABLE_P): Reorganize to shut up warnings. 1998-08-14 12:28:30 -04:00
alloca.c alloca.c: Respect USE_C_ALLOCA. 1998-07-17 08:00:11 -07:00
assert.h
basic-block.h
bitmap.c
bitmap.h
BUGS
build-make
c-aux-info.c
c-common.c c-common.c (decl_attributes): Issue an error if the argument to alias is not a string. 1998-08-18 05:40:52 -07:00
c-convert.c
c-decl.c * From Graham 1998-08-17 14:26:47 -06:00
c-gperf.h
c-iterate.c
c-lang.c
c-lex.c c-lex.c (yylex): Fix boundary conditions in character literal and string literal loops. 1998-07-27 08:51:56 -04:00
c-lex.h
c-parse.c
c-parse.gperf
c-parse.h
c-parse.in
c-parse.y
c-pragma.c
c-pragma.h
c-tree.h
c-typeck.c c-typeck.c (initializer_constant_valid_p): Allow conversion of 0 of any size to a pointer. 1998-08-13 11:26:46 -04:00
caller-save.c
calls.c
cccp.1
cccp.c cccp.c (do_include): Fix vax c style include handling. 1998-07-21 16:31:41 -06:00
cexp.c update 1998-07-23 14:08:04 -04:00
cexp.y configure.in (enable_c_mbchar): New configure option. 1998-07-20 09:35:38 -04:00
ChangeLog rtl.h (rtx_function): New type. 1998-08-19 06:30:47 -06:00
ChangeLog.10
ChangeLog.11
ChangeLog.12
ChangeLog.13
ChangeLog.lib
choose-temp.c
collect2.c tree.h: De-conditionalize init_priority code. 1998-08-13 13:29:30 -04:00
combine.c combine.c (can_combine_p): Allow combining insns with REG_RETVAL notes. 1998-08-18 12:29:40 -06:00
conditions.h
config.guess
config.in
config.sub * config.sub: Fix typo. 1998-08-02 22:10:44 +00:00
configure configure.in: Avoid [[ by using test and changequote. 1998-08-14 09:23:47 +00:00
configure.bat
configure.frag
configure.in configure.in: Avoid [[ by using test and changequote. 1998-08-14 09:23:47 +00:00
configure.lang
convert.c
convert.h
COPYING
COPYING.LIB
cpp.1
cpp.cps
cpp.fns
cpp.texi
cppalloc.c
cpperror.c
cppexp.c
cpphash.c
cpphash.h
cpplib.c Remove accidental checkin. 1998-07-20 16:36:45 -06:00
cpplib.h
cppmain.c
cross-make
crtstuff.c
cse.c i386.h (MODES_TIEABLE_P): Reorganize to shut up warnings. 1998-08-14 12:28:30 -04:00
cstamp-h.in
dbxout.c Fix stabs bug with C array ranges. 1998-07-23 12:14:18 -07:00
dbxout.h
dbxstclass.h
defaults.h
demangle.h
doprint.c
doschk.c
dostage2
dostage3
dwarf2.h
dwarf2out.c Fix sparc64-elf build problem. 1998-08-11 06:23:44 -07:00
dwarf2out.h
dwarf.h
dwarfout.c
dwarfout.h
dyn-string.c dyn-string.h: New file. 1998-07-30 12:30:30 +00:00
dyn-string.h dyn-string.h: New file. 1998-07-30 12:30:30 +00:00
eh-common.h
emit-rtl.c
enquire.c
except.c c-decl.c (init_decl_processing): Remove unneeded &. 1998-08-17 03:08:32 -06:00
except.h c-decl.c (init_decl_processing): Remove unneeded &. 1998-08-17 03:08:32 -06:00
exgettext Initial revision 1998-08-02 00:46:43 -06:00
explow.c
expmed.c
expr.c expr.c (emit_block_move): Do not call memcpy as a libcall instead build up a CALL_EXPR and call it like... 1998-08-18 11:49:28 -06:00
expr.h Function entry/exit profiling instrumentation: 1998-07-30 10:38:22 +00:00
extend.texi Function entry/exit profiling instrumentation: 1998-07-30 10:38:22 +00:00
final.c Sparc backend rewrite by rth and myself, please 1998-08-09 22:34:44 -07:00
fix-header.c
fixcpp
fixinc-nt.sed
fixinc.dgux
fixinc.irix Avoid irix 6.2/irix 6.3 header file conflict. 1998-07-22 05:50:10 -07:00
fixinc.ptx
fixinc.sco
fixinc.svr4
fixinc.winnt
fixinc.wrap
fixincludes
fixproto
flags.h Function entry/exit profiling instrumentation: 1998-07-30 10:38:22 +00:00
floatlib.c
flow.c c-decl.c (init_decl_processing): Remove unneeded &. 1998-08-17 03:08:32 -06:00
fold-const.c Makefile.in (cplus-dep.o): Use cplus-dem.c from libiberty. 1998-08-17 05:39:32 -06:00
fp-test.c
frame.c
frame.h
function.c Function entry/exit profiling instrumentation: 1998-07-30 10:38:22 +00:00
function.h Function entry/exit profiling instrumentation: 1998-07-30 10:38:22 +00:00
future.options
gansidecl.h
gbl-ctors.h
gcc.1
gcc.c gcc.c: Fix commentary describing %g, %u, %U, and %O. 1998-07-28 15:33:43 -06:00
gcc.cps
gcc.hlp
gcc.texi
gcov-io.h
gcov.c
gcov.texi
gcse.c loop.c (add_label_notes): Do not ignore references to labels before dispatch tables. 1998-08-14 18:33:57 -06:00
gen-protos.c
genattr.c
genattrtab.c
gencheck.c alloca.c: Respect USE_C_ALLOCA. 1998-07-17 08:00:11 -07:00
gencodes.c
genconfig.c
genemit.c except.c (set_exception_lang_code, [...]): Use prototype-style definition if __STDC__, to match declaration in except.h. 1998-08-11 13:36:42 +00:00
genextract.c
genflags.c
gengenrtl.c alloca.c: Respect USE_C_ALLOCA. 1998-07-17 08:00:11 -07:00
genmultilib
genopinit.c
genoutput.c
genpeep.c
genrecog.c genrecog.c (add_to_sequence): Fatal error if the modes of the operands of SET are incompatible. 1998-08-14 13:52:58 +00:00
getopt1.c
getopt.c
getopt.h
getpwd.c
glimits.h
global.c
gmon.c
gstab.h
gsyms.h
gsyslimits.h
gthr-dce.h
gthr-posix.h
gthr-single.h
gthr-solaris.h
gthr-vxworks.h
gthr.h
haifa-sched.c haifa-sched.c (sched_analyze): Put all JUMP_INSNs on the last pending memory flush list. 1998-08-18 15:58:15 -06:00
halfpic.c
halfpic.h
hard-reg-set.h
hash.c
hash.h
input.h
install1.texi
INSTALL
install.texi install.texi: Various SCO OpenServer tweaks. 1998-08-13 18:21:34 -06:00
integrate.c
integrate.h
intl.c Initial revision 1998-08-02 00:46:46 -06:00
intl.h Initial revision 1998-08-02 00:46:46 -06:00
invoke.texi toplev.c (main): Enable -fstrict-aliasing for -O2 and above. 1998-08-17 02:18:17 -06:00
jump.c jump.c (jump_optimize): When simplifying noop moves and PUSH_ROUNDING... 1998-07-19 19:20:07 -07:00
just-fixinc
LANGUAGES
libgcc1-test.c
libgcc1.c
libgcc2.c
limitx.h
limity.h
listing
LITERATURE New SEL-HPC URL. 1998-08-02 09:44:00 +00:00
local-alloc.c
longlong.h configure.in: Added i[34567]86-*-win32. 1998-07-27 11:56:18 +00:00
loop.c rtl.h (rtx_function): New type. 1998-08-19 06:30:47 -06:00
loop.h loop.h (struct induction): Add no_const_addval. 1998-07-17 07:46:06 -07:00
machmode.def
machmode.h
make-l2.com
Makefile.in Makefile.in (cplus-dem.o): Provide explicit rules for building cplus-dem.o 1998-08-18 04:26:35 -06:00
makefile.vms
mbchar.c configure.in (enable_c_mbchar): New configure option. 1998-07-20 09:35:38 -04:00
mbchar.h configure.in (enable_c_mbchar): New configure option. 1998-07-20 09:35:38 -04:00
md.texi
mips-tdump.c
mips-tfile.c
mkinstalldirs
mkstemp.c
move-if-change
NEWS
obstack.c
obstack.h
optabs.c Function entry/exit profiling instrumentation: 1998-07-30 10:38:22 +00:00
output.h
patch-apollo-includes
pcp.h
pexecute.c
prefix.c c-decl.c (init_decl_processing): Remove unneeded &. 1998-08-17 03:08:32 -06:00
print-rtl.c
print-tree.c
PROBLEMS
profile.c profile.c (branch_prob): Call allocate_reg_info after outputting profile rtl in instrument_arcs. 1998-07-22 09:14:27 -07:00
PROJECTS
protoize.c
pself1.c
pself2.c
pself3.c
pself.c
README
README-bugs
README-fixinc
README.ACORN
README.ALTOS
README.APOLLO
README.DWARF
README.FRESCO
README.g77 README.g77: Update from Craig. 1998-08-11 10:13:57 +00:00
README.gnat
README.NS32K
README.RS6000 AIX 4.1.5 binder -bbigtoc relocation overflow fix. 1998-08-10 06:28:59 -04:00
README.TRAD
README.X11
real.c
real.h
recog.c rtl.h (rtx_function): New type. 1998-08-19 06:30:47 -06:00
recog.h
reg-stack.c
regclass.c * regclass.c (allocate_reg_info): Respect MIN when clearing data. 1998-08-16 19:04:53 -07:00
regmove.c regmove.c (fixup_match_2): Do not call reg_overlap_mentioned_p on notes. 1998-08-18 11:14:34 -06:00
regs.h
reload1.c reload1.c (eliminate_regs_in_insn): Handle another case when eliminating the frame pointer to the hard frame pointer. 1998-08-13 18:14:09 -06:00
reload.c reload.c (find_equiv_reg): Reject equivalences separated by a volatile instruction. 1998-08-15 18:55:58 -06:00
reload.h
reorg.c Sparc backend rewrite by rth and myself, please 1998-08-09 22:34:44 -07:00
rtl.c
rtl.def Forgot to push this in with last change. 1998-08-14 04:50:46 -07:00
rtl.h rtl.h (rtx_function): New type. 1998-08-19 06:30:47 -06:00
rtl.texi
rtlanal.c cse.c (cse_insn): Enable subsitution inside libcall only for REG, SUBREG, MEM. 1998-07-28 12:54:04 +00:00
scan-decls.c
scan-types.sh
scan.c
scan.h
sched.c m68k.c: Include "system.h" instead of <stdio.h>. 1998-08-17 02:35:24 -06:00
sdbout.c
sdbout.h
SERVICE
sort-protos
stab.def
stack.h
stmt.c stmt.c (expand_end_loop): Tidy. 1998-08-17 03:30:15 -06:00
stor-layout.c stor-layout.c (layout_type): Handle arrays of bits, for Chill. 1998-07-27 10:37:00 -04:00
stupid.c
sys-protos.h
sys-types.h
system.h
TESTS.FLUNK
texinfo.tex
tlink.c
tm.texi
tmp-emsgids.c Initial revision 1998-08-02 00:46:43 -06:00
toplev.c Makefile.in (cplus-dep.o): Use cplus-dem.c from libiberty. 1998-08-17 05:39:32 -06:00
toplev.h
tree.c * From Graham 1998-08-17 14:26:47 -06:00
tree.def 1998-08-11 09:34:05 -07:00
tree.h tree.h: De-conditionalize init_priority code. 1998-08-13 13:29:30 -04:00
typeclass.h
unprotoize.c
unroll.c unroll.c (unroll_loop): Do not abort for an UNROLL_MODULO or UNROLL_COMPLETELY loop that starts with a... 1998-07-29 15:41:04 -06:00
varasm.c
varray.c
varray.h c-decl.c (init_decl_processing): Remove unneeded &. 1998-08-17 03:08:32 -06:00
version.c Daily bump. 1998-08-18 18:45:02 -06:00
vfprintf.c
vmsconfig.com
xcoffout.c
xcoffout.h

This directory contains the egcs version 1.0 release of the GNU C
compiler.  It includes all of the support for compiling C++ and
Objective C, including a run-time library for Objective C.

The GNU C compiler is free software.  See the file COPYING for copying
permission.

See the file gcc.texi (together with other files that it includes) for
installation and porting information.  The file INSTALL contains a
copy of the installation information, as plain ASCII.

Installing this package will create various files in subdirectories of
/usr/local/lib, which are passes used by the compiler and a library
named libgcc.a.  It will also create /usr/local/bin/gcc, which is
the user-level command to do a compilation.

See the Bugs chapter of the GCC Manual for how to report bugs
usefully.  An online readable version of the manual is in the files
gcc.info*.

The files pself.c and pself1.c are not part of GCC.
They are programs that print themselves on standard output.
They were written by Dario Dariol and Giovanni Cozzi, and are
included for your hacking pleasure.  Likewise pself2.c
(Who is the author of that?) and pself3.c (by Vlad Taeerov and Rashit
Fakhreyev).