summaryrefslogtreecommitdiff
path: root/gcc/expr.h
diff options
context:
space:
mode:
authorkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>2014-03-24 17:38:09 +0000
committerkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>2014-03-24 17:38:09 +0000
commit79127ad5470e355503fec0857b0f96ea94dc9fd1 (patch)
treeaeae7ffed74971f9fea144af390f17c819a9157c /gcc/expr.h
parent56afa794e0436dfc7c0914d568fff75a76909678 (diff)
downloadgcc-79127ad5470e355503fec0857b0f96ea94dc9fd1.tar.gz
2014-03-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
PR rtl-optimization/60501 * optabs.def (addptr3_optab): New optab. * optabs.c (gen_addptr3_insn, have_addptr3_insn): New function. * doc/md.texi ("addptrm3"): Document new RTL standard expander. * expr.h (gen_addptr3_insn, have_addptr3_insn): Add prototypes. * lra.c (emit_add3_insn): Use the addptr pattern if available. * config/s390/s390.md ("addptrdi3", "addptrsi3"): New expanders. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@208796 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.h')
-rw-r--r--gcc/expr.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/expr.h b/gcc/expr.h
index 5111f06e856..524da6731a9 100644
--- a/gcc/expr.h
+++ b/gcc/expr.h
@@ -180,10 +180,12 @@ extern void emit_libcall_block (rtx, rtx, rtx, rtx);
Likewise for subtraction and for just copying. */
extern rtx gen_add2_insn (rtx, rtx);
extern rtx gen_add3_insn (rtx, rtx, rtx);
+extern rtx gen_addptr3_insn (rtx, rtx, rtx);
extern rtx gen_sub2_insn (rtx, rtx);
extern rtx gen_sub3_insn (rtx, rtx, rtx);
extern rtx gen_move_insn (rtx, rtx);
extern int have_add2_insn (rtx, rtx);
+extern int have_addptr3_insn (rtx, rtx, rtx);
extern int have_sub2_insn (rtx, rtx);
/* Emit a pair of rtl insns to compare two rtx's and to jump