aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.h
diff options
context:
space:
mode:
authorChristoph Müllner <christoph.muellner@vrull.eu>2024-05-14 09:19:13 -0600
committerJeff Law <jlaw@ventanamicro.com>2024-05-14 09:19:13 -0600
commite6e41b68fd805ab126895a20bb9670442b198f62 (patch)
tree566f43981aa2c427456ae3aef6142c556473de96 /gcc/expr.h
parentc1356e8cc9a8c869ab936c927b1812b4691265b6 (diff)
downloadgcc-e6e41b68fd805ab126895a20bb9670442b198f62.zip
gcc-e6e41b68fd805ab126895a20bb9670442b198f62.tar.gz
gcc-e6e41b68fd805ab126895a20bb9670442b198f62.tar.bz2
[1/3] expr: Export clear_by_pieces()
Make clear_by_pieces() available to other parts of the compiler, similar to store_by_pieces(). gcc/ChangeLog: * expr.cc (clear_by_pieces): Remove static from clear_by_pieces. * expr.h (clear_by_pieces): Add prototype for clear_by_pieces.
Diffstat (limited to 'gcc/expr.h')
-rw-r--r--gcc/expr.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/expr.h b/gcc/expr.h
index 64956f6..7518158 100644
--- a/gcc/expr.h
+++ b/gcc/expr.h
@@ -245,6 +245,11 @@ extern bool can_store_by_pieces (unsigned HOST_WIDE_INT,
extern rtx store_by_pieces (rtx, unsigned HOST_WIDE_INT, by_pieces_constfn,
void *, unsigned int, bool, memop_ret);
+/* Generate several move instructions to clear LEN bytes of block TO. (A MEM
+ rtx with BLKmode). ALIGN is maximum alignment we can assume. */
+
+extern void clear_by_pieces (rtx, unsigned HOST_WIDE_INT, unsigned int);
+
/* If can_store_by_pieces passes for worst-case values near MAX_LEN, call
store_by_pieces within conditionals so as to handle variable LEN efficiently,
storing VAL, if non-NULL_RTX, or valc instead. */