From 65aa25a4430017f9d72cd3ccfaf25bd589908bc6 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Tue, 30 Jan 2018 09:45:40 +0000 Subject: [PATCH] Expand vec_perm_indices::series_p comment 2018-01-30 Richard Sandiford gcc/ * vec-perm-indices.c (vec_perm_indices::series_p): Give examples of usage. From-SVN: r257176 --- gcc/ChangeLog | 5 +++++ gcc/vec-perm-indices.c | 13 ++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index aafaa36975a..4aecf47e45a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2018-01-30 Richard Sandiford + + * vec-perm-indices.c (vec_perm_indices::series_p): Give examples + of usage. + 2018-01-29 Michael Meissner PR target/81550 diff --git a/gcc/vec-perm-indices.c b/gcc/vec-perm-indices.c index 53dbe0daedd..92489613c1b 100644 --- a/gcc/vec-perm-indices.c +++ b/gcc/vec-perm-indices.c @@ -114,7 +114,18 @@ vec_perm_indices::rotate_inputs (int delta) } /* Return true if index OUT_BASE + I * OUT_STEP selects input - element IN_BASE + I * IN_STEP. */ + element IN_BASE + I * IN_STEP. For example, the call to test + whether a permute reverses a vector of N elements would be: + + series_p (0, 1, N - 1, -1) + + which would return true for { N - 1, N - 2, N - 3, ... }. + The calls to test for an interleaving of elements starting + at N1 and N2 would be: + + series_p (0, 2, N1, 1) && series_p (1, 2, N2, 1). + + which would return true for { N1, N2, N1 + 1, N2 + 1, ... }. */ bool vec_perm_indices::series_p (unsigned int out_base, unsigned int out_step, -- 2.30.2