Messages in this thread Patch in this message | | | From | Chris Metcalf <> | Subject | [PATCH] tile: remove #pragma unroll from finv_buffer_remote() | Date | Tue, 6 Sep 2016 16:00:02 -0400 |
| |
This directive was put in the kernel source before the "pragma unroll" support for tilegx gcc was upstreamed. Remove it for now, and we can put it back later if/when the compiler support is upstreamed. This avoids a warning when building the kernel.
This routine is not on a hot path in any case, so the extra optimization here was mostly just for it's own sake.
Signed-off-by: Chris Metcalf <cmetcalf@mellanox.com> --- arch/tile/lib/cacheflush.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/arch/tile/lib/cacheflush.c b/arch/tile/lib/cacheflush.c index 9c0ec22009a5..c1ebc1065fc1 100644 --- a/arch/tile/lib/cacheflush.c +++ b/arch/tile/lib/cacheflush.c @@ -138,19 +138,13 @@ finv_buffer_remote(void *buffer, size_t size, int hfh) if ((unsigned long)base < (unsigned long)buffer) base = buffer; - /* - * Fire all the loads we need. The MAF only has eight entries - * so we can have at most eight outstanding loads, so we - * unroll by that amount. - */ -#pragma unroll 8 + /* Fire all the loads we need. */ for (; p >= base; p -= step_size) force_load(p); /* * Repeat, but with finv's instead of loads, to get rid of the * data we just loaded into our own cache and the old home L3. - * No need to unroll since finv's don't target a register. * The finv's are guaranteed not to actually flush the data in * the buffer back to their home, since we just read it, so the * lines are clean in cache; we will only invalidate those lines. -- 2.7.2
| |