aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.def
diff options
context:
space:
mode:
authorJanis Johnson <janis@gcc.gnu.org>2001-12-04 00:47:14 +0000
committerJanis Johnson <janis@gcc.gnu.org>2001-12-04 00:47:14 +0000
commit21b8482ae8289fccb3ddaaa74532995aa3f27c56 (patch)
tree75d518e5186a2da27e1bd86593dcab821b360f44 /gcc/rtl.def
parent44eca121fcf46c61cc2dd36bccb3bd5235b30006 (diff)
downloadgcc-21b8482ae8289fccb3ddaaa74532995aa3f27c56.zip
gcc-21b8482ae8289fccb3ddaaa74532995aa3f27c56.tar.gz
gcc-21b8482ae8289fccb3ddaaa74532995aa3f27c56.tar.bz2
rtl.def (PREFETCH): New rtx code.
* rtl.def (PREFETCH): New rtx code. * doc/rtl.texi (PREFETCH): Add documentation. * function.c (instantiate_virtual_regs_1): Handle PREFETCH rtx. * rtlanal.c (reg_referenced_p): Ditto. * sched-vis.c (print_exp): Ditto. * ssa-dce.c (find_inherently_necessary): Ditto. From-SVN: r47580
Diffstat (limited to 'gcc/rtl.def')
-rw-r--r--gcc/rtl.def11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/rtl.def b/gcc/rtl.def
index 6c887bc..786b940 100644
--- a/gcc/rtl.def
+++ b/gcc/rtl.def
@@ -514,6 +514,17 @@ DEF_RTL_EXPR(ADDR_VEC, "addr_vec", "E", 'x')
DEF_RTL_EXPR(ADDR_DIFF_VEC, "addr_diff_vec", "eEee0", 'x')
+/* Memory prefetch, with attributes supported on some targets.
+ Operand 1 is the address of the memory to fetch.
+ Operand 2 is 1 for a write access, 0 otherwise.
+ Operand 3 is the level of temporal locality; 0 means there is no
+ temporal locality and 1, 2, and 3 are for increasing levels of temporal
+ locality.
+
+ The attributes specified by operands 2 and 3 are ignored for targets
+ whose prefetch instructions do not support them. */
+DEF_RTL_EXPR(PREFETCH, "prefetch", "eee", 'x')
+
/* ----------------------------------------------------------------------
At the top level of an instruction (perhaps under PARALLEL).
---------------------------------------------------------------------- */