{"id":814014,"url":"http://patchwork.ozlabs.org/api/patches/814014/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/patch/CAELXzTORASUv0UGqNwWByWNNDY5xiiZA3Pt-TJfd+S1MWbgdNw@mail.gmail.com/","project":{"id":17,"url":"http://patchwork.ozlabs.org/api/projects/17/?format=json","name":"GNU Compiler Collection","link_name":"gcc","list_id":"gcc-patches.gcc.gnu.org","list_email":"gcc-patches@gcc.gnu.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<CAELXzTORASUv0UGqNwWByWNNDY5xiiZA3Pt-TJfd+S1MWbgdNw@mail.gmail.com>","list_archive_url":null,"date":"2017-09-15T01:28:47","name":"[RFC,AARCH64,2/5] : Add number of hw prefetchers available to cpu_prefetch_tune","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"0d143fe0e098c361ebe0ee404df7c6c79b9292c0","submitter":{"id":25768,"url":"http://patchwork.ozlabs.org/api/people/25768/?format=json","name":"Kugan Vivekanandarajah","email":"kugan.vivekanandarajah@linaro.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/gcc/patch/CAELXzTORASUv0UGqNwWByWNNDY5xiiZA3Pt-TJfd+S1MWbgdNw@mail.gmail.com/mbox/","series":[{"id":3186,"url":"http://patchwork.ozlabs.org/api/series/3186/?format=json","web_url":"http://patchwork.ozlabs.org/project/gcc/list/?series=3186","date":"2017-09-15T01:24:36","name":"Loop unrolling and memory load streams","version":1,"mbox":"http://patchwork.ozlabs.org/series/3186/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/814014/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/814014/checks/","tags":{},"related":[],"headers":{"Return-Path":"<gcc-patches-return-462190-incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","mailing list gcc-patches@gcc.gnu.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org\n\t(client-ip=209.132.180.131; helo=sourceware.org;\n\tenvelope-from=gcc-patches-return-462190-incoming=patchwork.ozlabs.org@gcc.gnu.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (1024-bit key;\n\tunprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org\n\theader.b=\"MRPoxaG+\"; dkim-atps=neutral","sourceware.org; auth=none"],"Received":["from sourceware.org (server1.sourceware.org [209.132.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xtd8q24Zkz9t2V\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri, 15 Sep 2017 11:28:59 +1000 (AEST)","(qmail 106511 invoked by alias); 15 Sep 2017 01:28:51 -0000","(qmail 106499 invoked by uid 89); 15 Sep 2017 01:28:51 -0000","from mail-qk0-f177.google.com (HELO mail-qk0-f177.google.com)\n\t(209.85.220.177) by sourceware.org\n\t(qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP;\n\tFri, 15 Sep 2017 01:28:49 +0000","by mail-qk0-f177.google.com with SMTP id u7so930887qku.13 for\n\t<gcc-patches@gcc.gnu.org>; Thu, 14 Sep 2017 18:28:49 -0700 (PDT)","by 10.237.37.211 with HTTP; Thu, 14 Sep 2017 18:28:47 -0700 (PDT)"],"DomainKey-Signature":"a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id\n\t:list-unsubscribe:list-archive:list-post:list-help:sender\n\t:mime-version:from:date:message-id:subject:to:content-type; q=\n\tdns; s=default; b=ZbgiFLrkCs/Ly2i5DkwzG0AaQzDKxoFVODymj3f4XHx768\n\tqwHWSJ8Wm0QcuEGtOBUnWS2qdbVDjQsByClgieva4yMZp9CnCXjWls59Lv84Od+B\n\thrWFzJcKXU6O7HdEMB/z4rO46WMfUIU+NqvZWb17/Y7xKRzYGfBgR2Ye4EUEI=","DKIM-Signature":"v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id\n\t:list-unsubscribe:list-archive:list-post:list-help:sender\n\t:mime-version:from:date:message-id:subject:to:content-type; s=\n\tdefault; bh=oTOLq5chnGuF+Q3ZK9HnAP9oi9A=; b=MRPoxaG+KdpG62XffBLk\n\toSCy41w4FJfixtYUOh84LqV+smmRmaeF3ITYhXzEp+Co+lWAPBO9BYj7h9QtGrZH\n\tUQ2gnm9kTR9gHyUJGTp6gO1LEZsmNc9r9PUHYPUOBaeZcldyPb4UkQ++AbDDa7zj\n\tJUJlhGcjeaymozOi0ZEoWSc=","Mailing-List":"contact gcc-patches-help@gcc.gnu.org; run by ezmlm","Precedence":"bulk","List-Id":"<gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<mailto:gcc-patches-unsubscribe-incoming=patchwork.ozlabs.org@gcc.gnu.org>","List-Archive":"<http://gcc.gnu.org/ml/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-help@gcc.gnu.org>","Sender":"gcc-patches-owner@gcc.gnu.org","X-Virus-Found":"No","X-Spam-SWARE-Status":"No, score=-24.0 required=5.0 tests=AWL, BAYES_00,\n\tGIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3,\n\tRCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM,\n\tSPF_PASS autolearn=ham version=3.3.2 spammy=5427","X-HELO":"mail-qk0-f177.google.com","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net;\n\ts=20161025;\n\th=x-gm-message-state:mime-version:from:date:message-id:subject:to;\n\tbh=EI8CoFG15kcvi9I332ljBuADU17C5rTcQZMFIC5DFpA=;\n\tb=p/V6ouzTMykhvwgBaSUh0ZMfMvYBQxveFJO30i1ihoHBvPEu9yiwXKOeLME0/inDeh\n\ta0ph8yaA1PypIZoAJFEc3EFI0EPizukeOs1KmQ4ftTeWZ9NFgWs+tIz5orxlmqE5Kzul\n\tCT1bCDrXum36rMMgn9oQYQW9IdUTeT5PBMOgBgi/ZOmH9zosK13Ugc2j9EyHIHiNDxKq\n\tg4yWga4tQZd+GZbuhmIfSw/KnoNjwc7cVfTVg7XK/QMeECTQvunpbqrTfpiBXoKc/haD\n\tG/bjuqoZJWyhvKaOwHbzkrGV9UJFnDSPepko19+OZfChki7HcUo6nmwpj6IcprjAf9/G\n\taFMw==","X-Gm-Message-State":"AHPjjUiNVnE9BW7sdoEa6wFTrA7O1dr+WUPTmD3VuJMlycBHuJ7Q4bFQ\t2xTfWr9HGHiB9B1yGXcgbwJ9RDagRyiB4QQoCMlZIBvQZQw=","X-Google-Smtp-Source":"AOwi7QCtmwPlCj9hBfRuoVIr0Fd2TzNtEub4PWsPN+Iodo2lsZHfGnQO5TzxuvfFpveCm2n5wk5OJ2UQwPERs7HWCPs=","X-Received":"by 10.55.170.216 with SMTP id t207mr5150857qke.232.1505438927988;\n\tThu, 14 Sep 2017 18:28:47 -0700 (PDT)","MIME-Version":"1.0","From":"Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org>","Date":"Fri, 15 Sep 2017 11:28:47 +1000","Message-ID":"<CAELXzTORASUv0UGqNwWByWNNDY5xiiZA3Pt-TJfd+S1MWbgdNw@mail.gmail.com>","Subject":"[RFC][AARCH64][PATCH 2/5]: Add number of hw prefetchers available\n\tto cpu_prefetch_tune","To":"\"gcc-patches@gcc.gnu.org\" <gcc-patches@gcc.gnu.org>","Content-Type":"multipart/mixed; boundary=\"94eb2c05b91c8906f90559305005\"","X-IsSubscribed":"yes"},"content":"This patch adds number of hw prefetchers available to\ncpu_prefetch_tune so it can be used in loop unrolling decisions.\n\nThanks,\nKugan\n\ngcc/ChangeLog:\n\n2017-09-12  Kugan Vivekanandarajah  <kuganv@linaro.org>\n\n    * config/aarch64/aarch64-protos.h (struct cpu_prefetch_tune): Add\n      new field hw_prefetchers_avail.\n    * config/aarch64/aarch64.c: Add values for hw_prefetchers_avail.","diff":"From 07de7988c4c36a8eb262d53c259dc17d20d3b770 Mon Sep 17 00:00:00 2001\nFrom: Kugan Vivekanandarajah <kugan.vivekanandarajah@linaro.org>\nDate: Fri, 25 Aug 2017 10:02:45 +1000\nSubject: [PATCH 2/5] Add hw prefetchers to cpu_prefetch_tune\n\n---\n gcc/config/aarch64/aarch64-protos.h |  1 +\n gcc/config/aarch64/aarch64.c        | 18 ++++++++++++------\n 2 files changed, 13 insertions(+), 6 deletions(-)\n\ndiff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h\nindex e397ff4..a182105 100644\n--- a/gcc/config/aarch64/aarch64-protos.h\n+++ b/gcc/config/aarch64/aarch64-protos.h\n@@ -211,6 +211,7 @@ struct cpu_prefetch_tune\n   const int l1_cache_line_size;\n   const int l2_cache_size;\n   const int default_opt_level;\n+  const int hw_prefetchers_avail;\n };\n \n struct tune_params\ndiff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c\nindex d753666..7d1ee70 100644\n--- a/gcc/config/aarch64/aarch64.c\n+++ b/gcc/config/aarch64/aarch64.c\n@@ -533,7 +533,8 @@ static const cpu_prefetch_tune generic_prefetch_tune =\n   -1,\t\t\t/* l1_cache_size  */\n   -1,\t\t\t/* l1_cache_line_size  */\n   -1,\t\t\t/* l2_cache_size  */\n-  -1\t\t\t/* default_opt_level  */\n+  -1,\t\t\t/* default_opt_level  */\n+  -1\t\t\t/* default hw_prefetchers_avail */\n };\n \n static const cpu_prefetch_tune exynosm1_prefetch_tune =\n@@ -542,7 +543,8 @@ static const cpu_prefetch_tune exynosm1_prefetch_tune =\n   -1,\t\t\t/* l1_cache_size  */\n   64,\t\t\t/* l1_cache_line_size  */\n   -1,\t\t\t/* l2_cache_size  */\n-  -1\t\t\t/* default_opt_level  */\n+  -1,\t\t\t/* default_opt_level  */\n+  -1\t\t\t/* default hw_prefetchers_avail */\n };\n \n static const cpu_prefetch_tune qdf24xx_prefetch_tune =\n@@ -551,7 +553,8 @@ static const cpu_prefetch_tune qdf24xx_prefetch_tune =\n   32,\t\t\t/* l1_cache_size  */\n   64,\t\t\t/* l1_cache_line_size  */\n   1024,\t\t\t/* l2_cache_size  */\n-  3\t\t\t/* default_opt_level  */\n+  3,\t\t\t/* default_opt_level  */\n+  7\t\t\t/* hw_prefetchers_avail */\n };\n \n static const cpu_prefetch_tune thunderxt88_prefetch_tune =\n@@ -560,7 +563,8 @@ static const cpu_prefetch_tune thunderxt88_prefetch_tune =\n   32,\t\t\t/* l1_cache_size  */\n   128,\t\t\t/* l1_cache_line_size  */\n   16*1024,\t\t/* l2_cache_size  */\n-  3\t\t\t/* default_opt_level  */\n+  3,\t\t\t/* default_opt_level  */\n+  -1\t\t\t/* default hw_prefetchers_avail */\n };\n \n static const cpu_prefetch_tune thunderx_prefetch_tune =\n@@ -569,7 +573,8 @@ static const cpu_prefetch_tune thunderx_prefetch_tune =\n   32,\t\t\t/* l1_cache_size  */\n   128,\t\t\t/* l1_cache_line_size  */\n   -1,\t\t\t/* l2_cache_size  */\n-  -1\t\t\t/* default_opt_level  */\n+  -1,\t\t\t/* default_opt_level  */\n+  -1\t\t\t/* default hw_prefetchers_avail */\n };\n \n static const cpu_prefetch_tune thunderx2t99_prefetch_tune =\n@@ -578,7 +583,8 @@ static const cpu_prefetch_tune thunderx2t99_prefetch_tune =\n   32,\t\t\t/* l1_cache_size  */\n   64,\t\t\t/* l1_cache_line_size  */\n   256,\t\t\t/* l2_cache_size  */\n-  -1\t\t\t/* default_opt_level  */\n+  -1,\t\t\t/* default_opt_level  */\n+  -1\t\t\t/* default hw_prefetchers_avail */\n };\n \n static const struct tune_params generic_tunings =\n-- \n2.7.4\n\n","prefixes":["RFC","AARCH64","2/5"]}