!44 [Update] Fix Optimized LocalVarSummeryPass

From: @dguangya 
Reviewed-by: @li-yancheng 
Signed-off-by: @li-yancheng
This commit is contained in:
openeuler-ci-bot 2023-03-26 08:41:33 +00:00 committed by Gitee
commit 932aa6efd4
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 38 additions and 1 deletions

View File

@ -0,0 +1,29 @@
From 085d310af6b860b00245c0ceb88c9cc8413ae67e Mon Sep 17 00:00:00 2001
From: d00573793 <dingguangya1@huawei.com>
Date: Fri, 24 Mar 2023 18:41:45 +0800
Subject: [PATCH] [Pin-server] Optimized LocalVarSummeryPass
diff --git a/user/LocalVarSummeryPass.cpp b/user/LocalVarSummeryPass.cpp
index b7e104e..4f72a2a 100755
--- a/user/LocalVarSummeryPass.cpp
+++ b/user/LocalVarSummeryPass.cpp
@@ -35,6 +35,7 @@ static void LocalVarSummery(void)
vector<mlir::Plugin::FunctionOp> allFunction = pluginAPI.GetAllFunc();
map<string, string> args = PluginServer::GetInstance()->GetArgs();
for (size_t i = 0; i < allFunction.size(); i++) {
+ if (allFunction[i] == nullptr) continue;
uint64_t funcID = allFunction[i].idAttr().getValue().getZExtValue();
fprintf(stderr, "In the %ldth function:\n", i);
vector<mlir::Plugin::LocalDeclOp> decls = pluginAPI.GetDecls(funcID);
@@ -73,6 +74,7 @@ static void LocalVarSummery(void)
}
for (size_t j = 0; j < decls.size(); j++) {
auto decl = decls[j];
+ if (decl == nullptr) continue;
string name = decl.symNameAttr().getValue().str();
int64_t declTypeID = decl.typeIDAttr().getValue().getZExtValue();
if (declTypeID == typeFilter) {
--
2.33.0

View File

@ -1,6 +1,6 @@
Name: pin-server Name: pin-server
Version: 0.4.0 Version: 0.4.0
Release: 8 Release: 9
Summary: Pin (Plug-IN framework) server provides plugin APIs for compiler optimization developers to develop optimization pass. Summary: Pin (Plug-IN framework) server provides plugin APIs for compiler optimization developers to develop optimization pass.
License: Apache 2.0 License: Apache 2.0
URL: https://gitee.com/openeuler/pin-server URL: https://gitee.com/openeuler/pin-server
@ -36,6 +36,7 @@ Patch23: 0023-Pin-server-Add-StructReorderPASS-demo.patch
Patch24: 0024-Pin-server-Fix-VectorType.patch Patch24: 0024-Pin-server-Fix-VectorType.patch
Patch25: 0025-Pin-server-Fix-Pass-DoOptimize-method-and-struct-sel.patch Patch25: 0025-Pin-server-Fix-Pass-DoOptimize-method-and-struct-sel.patch
Patch26: 0026-Pin-server-Fix-log-output-form.patch Patch26: 0026-Pin-server-Fix-log-output-form.patch
Patch27: 0027-Pin-server-Optimized-LocalVarSummeryPass.patch
%description %description
Pin (Plug-IN framework) server provides plugin APIs for compiler optimization developers to develop optimization pass. Pin (Plug-IN framework) server provides plugin APIs for compiler optimization developers to develop optimization pass.
@ -77,6 +78,7 @@ A demo for pin-server
%patch24 -p1 %patch24 -p1
%patch25 -p1 %patch25 -p1
%patch26 -p1 %patch26 -p1
%patch27 -p1
mkdir -p _build mkdir -p _build
cd _build cd _build
@ -117,6 +119,12 @@ find %{_libdir} -type f -name "libMLIRServerAPI.so" -exec strip "{}" ";"
%config(noreplace) /etc/ld.so.conf.d/%{name}-%{_arch}.conf %config(noreplace) /etc/ld.so.conf.d/%{name}-%{_arch}.conf
%changelog %changelog
* Sat Mar 25 2023 dingguangya <dingguangya1@huawei.com> - 0.4.0-9
- Type:Update
- ID:NA
- SUG:NA
- DESC:Fix Optimized LocalVarSummeryPass
* Tue Mar 21 2023 dingguangya <dingguangya1@huawei.com> - 0.4.0-8 * Tue Mar 21 2023 dingguangya <dingguangya1@huawei.com> - 0.4.0-8
- Type:Update - Type:Update
- ID:NA - ID:NA