From 442e4fdaecc4b8aec5a2bf32278773d3b5af0aaa Mon Sep 17 00:00:00 2001 From: =?utf8?q?=EB=B0=95=EC=A2=85=ED=98=84/=EB=8F=99=EC=9E=91=EC=A0=9C?= =?utf8?q?=EC=96=B4Lab=28SR=29/Staff=20Engineer/=EC=82=BC=EC=84=B1?= =?utf8?q?=EC=A0=84=EC=9E=90?= Date: Fri, 7 Sep 2018 13:31:44 +0900 Subject: [PATCH] [enco] Loop Generation over Partial Shuffle (#1405) With this commit, Host codegen is now able to emit loop nests for partial shuffle. Signed-off-by: Jonghyun Park --- contrib/enco/core/src/CppGen/Host.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/contrib/enco/core/src/CppGen/Host.cpp b/contrib/enco/core/src/CppGen/Host.cpp index 6115051..63bc251 100644 --- a/contrib/enco/core/src/CppGen/Host.cpp +++ b/contrib/enco/core/src/CppGen/Host.cpp @@ -42,9 +42,10 @@ TransferSequence as_transfer_sequence(const coco::Shuffle *shuffle) { TransferSequence seq; - for (uint32_t n = 0; n < shuffle->into()->size(); ++n) + for (const auto &dst : shuffle->range()) { - seq.emplace_back(shuffle->at(n).value(), n); + const auto src = shuffle->at(dst.value()); + seq.emplace_back(src.value(), dst.value()); } return seq; -- 2.7.4