f2f90c63c8
* config/ia64/ia64-protos.h: Update. * config/ia64/ia64.c (signed_inequality_operator): New. (ia64_expand_compare): New. (ia64_register_move_cost): Handle PR_REGS moves. (ia64_secondary_reload_class): Require a GR when moving to a PR. (struct reg_write_state): Add written_by_and/or. (struct reg_flags): Add is_and/or. (rws_update): Set them. (rws_access_regno): Test them to allow parallel comparisons. (rtx_needs_barrier): Recognize parallel comparisons. (emit_insn_group_barriers): Set prev_insn after a call stop bit. Call recog_memoized; ignore pred_rel_mutex. (emit_predicate_relation_info): Don't call find_basic_blocks here. (ia64_reorg): Do it here instead. * config/ia64/ia64.h: s/CCmode/BImode/g (MODES_TIEABLE_P): Don't tie BImode. (PREFERRED_RELOAD_CLASS): Do not reload operations into AR regs. (CONST_COSTS): Pick sensible values for CONST_INT based on context. (RTX_COSTS): Make multiply 4 insns. (MEMORY_MOVE_COST): New. (PREDICATE_CODES): Update. * config/ia64/ia64.md: s/CCmode/BImode/g (movcci, movbi): New. (andbi3, andcmbi3, iorbi3, iorcmbi3, one_cmplbi2): New. (cmpsi_and_0, cmpsi_and_1, cmpsi_andnot_0, cmpsi_andnot_1): New. (cmpdi_and_0, cmpdi_and_1, cmpdi_andnot_0, cmpdi_andnot_1): New. (tbit_and_0, tbit_and_1, tbit_and_2, tbit_and_3): New. (cmpsi_or_0, cmpsi_or_1, cmpsi_orcm_0, cmpsi_orcm_1): New. (cmpdi_or_0, cmpdi_or_1, cmpdi_orcm_0, cmpdi_orcm_1): New. (tbit_or_0, tbit_or_1, tbit_or_2, tbit_or_3): New. (mulsi, muldi): Use xmpy not xma. (cmpbi): New. (movcc, movcc_internal): Remove. (branch expanders): Use ia64_expand_compare. (setcc expanders): Likewise. (cmov insns): Use move_operand and ia64_move_ok. (pred_rel_mutex): Use unspec not unspec_volatile. Prevent the scheduler from moving it past a use. * config/ia64/build.hacks: Remove. From-SVN: r36510 |
||
---|---|---|
boehm-gc | ||
config | ||
contrib | ||
etc | ||
gcc | ||
include | ||
INSTALL | ||
libchill | ||
libf2c | ||
libffi | ||
libiberty | ||
libio | ||
libjava | ||
libobjc | ||
libstdc++ | ||
libstdc++-v3 | ||
texinfo | ||
zlib | ||
.cvsignore | ||
ChangeLog | ||
config-ml.in | ||
config.guess | ||
config.if | ||
config.sub | ||
configure | ||
configure.in | ||
COPYING | ||
COPYING.LIB | ||
djunpack.bat | ||
install-sh | ||
libtool.m4 | ||
ltcf-c.sh | ||
ltcf-cxx.sh | ||
ltcf-gcj.sh | ||
ltconfig | ||
ltmain.sh | ||
MAINTAINERS | ||
Makefile.in | ||
missing | ||
mkdep | ||
mkinstalldirs | ||
move-if-change | ||
README | ||
symlink-tree | ||
ylwrap |
README for GNU development tools This directory contains various GNU compilers, assemblers, linkers, debuggers, etc., plus their support routines, definitions, and documentation. Check the INSTALL directory for detailed configuration and installation instructions. Much of the code and documentation enclosed is copyright by the Free Software Foundation, Inc. See the file COPYING or COPYING.LIB in the various directories, for a description of the GNU General Public License terms under which you can copy the files. REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info on where and how to report problems.