From 1a15f7884a776bede0e4d8cb605af3eb2b8047e4 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: Thu, 13 Sep 2018 07:57:06 +0900 Subject: [PATCH] [coco] Rename Object::Def and Object::Use (#1478) This commit renames Object::Def and Object::Use as Object::Producer and Object::Consumer, respectively. Signed-off-by: Jonghyun Park --- contrib/coco/core/include/coco/IR/Conv2D.h | 2 +- contrib/coco/core/include/coco/IR/DefHook.h | 5 +++-- contrib/coco/core/include/coco/IR/DefSlot.h | 2 +- contrib/coco/core/include/coco/IR/Instr.h | 2 +- contrib/coco/core/include/coco/IR/Object.h | 14 +++++++------- contrib/coco/core/include/coco/IR/ObjectInfo.h | 12 ++++++------ contrib/coco/core/include/coco/IR/UseHook.h | 5 +++-- contrib/coco/core/include/coco/IR/UseSlot.h | 2 +- contrib/coco/core/src/IR/Def.mock.h | 2 +- contrib/coco/core/src/IR/Object.cpp | 4 ++-- contrib/coco/core/src/IR/ObjectInfo.cpp | 2 +- contrib/coco/core/src/IR/Use.mock.h | 3 ++- 12 files changed, 29 insertions(+), 26 deletions(-) diff --git a/contrib/coco/core/include/coco/IR/Conv2D.h b/contrib/coco/core/include/coco/IR/Conv2D.h index 9452003..8cb4676 100644 --- a/contrib/coco/core/include/coco/IR/Conv2D.h +++ b/contrib/coco/core/include/coco/IR/Conv2D.h @@ -16,7 +16,7 @@ namespace coco * NOTE IFM and OFM are implicit. Only 4D kernel is explicit in this class * TODO Decide source code layout policy and extract this class if necessary */ -class Conv2D : public Op, public Object::Use +class Conv2D : public Op, public Object::Consumer { public: explicit Conv2D(const PtrLink *, const PtrLink *); diff --git a/contrib/coco/core/include/coco/IR/DefHook.h b/contrib/coco/core/include/coco/IR/DefHook.h index 9fe4506..c544771 100644 --- a/contrib/coco/core/include/coco/IR/DefHook.h +++ b/contrib/coco/core/include/coco/IR/DefHook.h @@ -12,7 +12,7 @@ namespace coco class DefHook final { public: - DefHook(const PtrLink *obj_link, Object::Def *def) + DefHook(const PtrLink *obj_link, Object::Producer *def) : _obj_link{obj_link}, _def{def} { // DO NOTHING @@ -27,7 +27,8 @@ public: private: const PtrLink *const _obj_link; - Object::Def *const _def; + // TODO Rename field + Object::Producer *const _def; }; } // namespace coco diff --git a/contrib/coco/core/include/coco/IR/DefSlot.h b/contrib/coco/core/include/coco/IR/DefSlot.h index edfe392..537cfee 100644 --- a/contrib/coco/core/include/coco/IR/DefSlot.h +++ b/contrib/coco/core/include/coco/IR/DefSlot.h @@ -9,7 +9,7 @@ namespace coco template class DefSlot final { public: - DefSlot(const PtrLink *obj_link, Object::Def *use) + DefSlot(const PtrLink *obj_link, Object::Producer *use) : _hook{obj_link, use}, _value{nullptr} { } diff --git a/contrib/coco/core/include/coco/IR/Instr.h b/contrib/coco/core/include/coco/IR/Instr.h index 92fb488..4348235 100644 --- a/contrib/coco/core/include/coco/IR/Instr.h +++ b/contrib/coco/core/include/coco/IR/Instr.h @@ -152,7 +152,7 @@ public: namespace coco { -class FeatureInstr : public Instr, public Object::Def, public Object::Use +class FeatureInstr : public Instr, public Object::Producer, public Object::Consumer { public: FeatureInstr(const PtrLink *obj_link); diff --git a/contrib/coco/core/include/coco/IR/Object.h b/contrib/coco/core/include/coco/IR/Object.h index 630f905..33e9899 100644 --- a/contrib/coco/core/include/coco/IR/Object.h +++ b/contrib/coco/core/include/coco/IR/Object.h @@ -21,17 +21,17 @@ namespace coco class Object { public: - struct Def : public Bag::Updater + struct Producer : public Bag::Updater { - virtual ~Def() = default; + virtual ~Producer() = default; }; - struct Use : public Bag::Reader + struct Consumer : public Bag::Reader { - virtual ~Use() = default; + virtual ~Consumer() = default; }; - using User = std::set; + using ConsumerSet = std::set; public: Object(); @@ -58,8 +58,8 @@ private: ObjectInfo *info(void) const; public: - Def *def(void) const; - const User *user(void) const; + Producer *def(void) const; + const ConsumerSet *user(void) const; private: Dep _dep; diff --git a/contrib/coco/core/include/coco/IR/ObjectInfo.h b/contrib/coco/core/include/coco/IR/ObjectInfo.h index d73fd90..508913e 100644 --- a/contrib/coco/core/include/coco/IR/ObjectInfo.h +++ b/contrib/coco/core/include/coco/IR/ObjectInfo.h @@ -15,16 +15,16 @@ public: virtual ~ObjectInfo() = default; public: - Object::Def *def(void) const { return _def; } - void def(Object::Def *d); + Object::Producer *def(void) const { return _def; } + void def(Object::Producer *d); public: - Object::User *user(void) { return &_user; } - const Object::User *user(void) const { return &_user; } + Object::ConsumerSet *user(void) { return &_user; } + const Object::ConsumerSet *user(void) const { return &_user; } private: - Object::Def *_def = nullptr; - Object::User _user; + Object::Producer *_def = nullptr; + Object::ConsumerSet _user; }; } // namespace coco diff --git a/contrib/coco/core/include/coco/IR/UseHook.h b/contrib/coco/core/include/coco/IR/UseHook.h index 13361e5..0bec126 100644 --- a/contrib/coco/core/include/coco/IR/UseHook.h +++ b/contrib/coco/core/include/coco/IR/UseHook.h @@ -12,7 +12,7 @@ namespace coco class UseHook final { public: - UseHook(const PtrLink *obj_link, Object::Use *use) + UseHook(const PtrLink *obj_link, Object::Consumer *use) : _obj_link{obj_link}, _use{use} { // DO NOTHING @@ -27,7 +27,8 @@ public: private: const PtrLink *const _obj_link; - Object::Use *const _use; + // TODO Rename field + Object::Consumer *const _use; }; } // namespace coco diff --git a/contrib/coco/core/include/coco/IR/UseSlot.h b/contrib/coco/core/include/coco/IR/UseSlot.h index 280db00..9499551 100644 --- a/contrib/coco/core/include/coco/IR/UseSlot.h +++ b/contrib/coco/core/include/coco/IR/UseSlot.h @@ -11,7 +11,7 @@ namespace coco template class UseSlot final { public: - UseSlot(const PtrLink *obj_link, Object::Use *use) + UseSlot(const PtrLink *obj_link, Object::Consumer *use) : _hook{obj_link, use}, _value{nullptr} { // DO NOTHING diff --git a/contrib/coco/core/src/IR/Def.mock.h b/contrib/coco/core/src/IR/Def.mock.h index 0efbf48..1d30bc2 100644 --- a/contrib/coco/core/src/IR/Def.mock.h +++ b/contrib/coco/core/src/IR/Def.mock.h @@ -7,7 +7,7 @@ namespace { namespace mock { -struct Def final : public coco::Object::Def +struct Def final : public coco::Object::Producer { coco::Instr *loc(void) override { return nullptr; } }; diff --git a/contrib/coco/core/src/IR/Object.cpp b/contrib/coco/core/src/IR/Object.cpp index 2fca0cc..a93d0f1 100644 --- a/contrib/coco/core/src/IR/Object.cpp +++ b/contrib/coco/core/src/IR/Object.cpp @@ -23,7 +23,7 @@ ObjectInfo *Object::info(void) const return res; } -Object::Def *Object::def(void) const { return info()->def(); } -const Object::User *Object::user(void) const { return info()->user(); } +Object::Producer *Object::def(void) const { return info()->def(); } +const Object::ConsumerSet *Object::user(void) const { return info()->user(); } } // namespace coco diff --git a/contrib/coco/core/src/IR/ObjectInfo.cpp b/contrib/coco/core/src/IR/ObjectInfo.cpp index 6aef12e..f49b67d 100644 --- a/contrib/coco/core/src/IR/ObjectInfo.cpp +++ b/contrib/coco/core/src/IR/ObjectInfo.cpp @@ -5,7 +5,7 @@ namespace coco { -void ObjectInfo::def(Object::Def *d) +void ObjectInfo::def(Object::Producer *d) { // This assert ensures that object cannot have multiple def. assert((_def == nullptr) || (d == nullptr)); diff --git a/contrib/coco/core/src/IR/Use.mock.h b/contrib/coco/core/src/IR/Use.mock.h index 0d8e8de..e98adf1 100644 --- a/contrib/coco/core/src/IR/Use.mock.h +++ b/contrib/coco/core/src/IR/Use.mock.h @@ -7,7 +7,8 @@ namespace { namespace mock { -struct Use final : public coco::Object::Use +// TODO Rename class +struct Use final : public coco::Object::Consumer { coco::Instr *loc(void) override { return nullptr; } }; -- 2.7.4