diff --git a/.gitignore b/.gitignore index ad9a6cd..01acf64 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ /org.eclipse.ptp-88a46f8333dbcf53e50be317aa401ba2afd77f32.tar.xz /org.eclipse.ptp-PTP_9_0_2.tar.xz /org.eclipse.ptp-PTP_9_1_0.tar.xz +/org.eclipse.ptp-5159d58c7f9f98a166dd19b52a923099ef2ddee9.tar.xz diff --git a/eclipse-ptp-cdt-changes.patch b/eclipse-ptp-cdt-changes.patch deleted file mode 100644 index aaeb5b4..0000000 --- a/eclipse-ptp-cdt-changes.patch +++ /dev/null @@ -1,468 +0,0 @@ -From 10e74a3bf03a6ccf948eaea257db217f694e5003 Mon Sep 17 00:00:00 2001 -From: Greg Watson -Date: Thu, 24 Mar 2016 17:58:49 -0400 -Subject: Fix API changes in CDT and add a target definition. - -Change-Id: I6f33b340737c41834c0e9253c902110f53cdcbd3 -Signed-off-by: Greg Watson ---- -diff --git a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/BarrierTable.java b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/BarrierTable.java -index 0fce3de..e01a386 100644 ---- a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/BarrierTable.java -+++ b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/BarrierTable.java -@@ -153,76 +153,77 @@ public class BarrierTable { - * Problem: for the case of #define newcomm MPI_COMM_WORLD - * I don't want the getRawSignature() on the communicator arg, i want the - * pre-processed value. How to get that? -+ * -+ * FIXME: This hasn't been tested with the new getArguments() interface, so may be broken. - */ - //@formatter:on - protected void setComm() { -- IASTExpression parameter = barrier_.getParameterExpression(); -- IASTInitializerClause[] newParms = barrier_.getArguments(); // BRT could fix deprecation? -- -- if (parameter instanceof IASTUnaryExpression) { -- IASTUnaryExpression commExpr = (IASTUnaryExpression) parameter; -- IASTExpression commOp = commExpr.getOperand(); -- if (commOp instanceof IASTUnaryExpression) { -- if (dbg_barrier) -- System.out.println("setComm(): communicator is IASTUnaryExpression"); //$NON-NLS-1$ -- // IASTUnaryExpression commOprd = (IASTUnaryExpression) commOp; -- if (commOp instanceof IASTLiteralExpression) {// Yuan says windows -+ IASTInitializerClause[] arguments = barrier_.getArguments(); -+ if (arguments.length > 0) { -+ if (arguments[0] instanceof IASTUnaryExpression) { -+ IASTUnaryExpression commExpr = (IASTUnaryExpression) arguments[0]; -+ IASTExpression commOp = commExpr.getOperand(); -+ if (commOp instanceof IASTUnaryExpression) { - if (dbg_barrier) -- System.out.println(); -- IASTLiteralExpression comm = (IASTLiteralExpression) commOp; -- comm_ = comm.toString(); -- } else if (commOp instanceof IASTIdExpression) { // Yuan says linux -- IASTIdExpression comm = (IASTIdExpression) commOp; -- comm_ = comm.getName().toString(); -- } else if (commOp instanceof IASTName) {// ? -- comm_ = commOp.toString(); -- } else { -- -- if (commOp instanceof IASTUnaryExpression) {// Mac OSX Openmpi < 1.3 (/usr/include/mpi.h) // 4/14/10: got -- // here OMPI 1.3.3 -- IASTUnaryExpression iastUnaryExpression = (IASTUnaryExpression) commOp; -+ System.out.println("setComm(): communicator is IASTUnaryExpression"); //$NON-NLS-1$ -+ // IASTUnaryExpression commOprd = (IASTUnaryExpression) commOp; -+ if (commOp instanceof IASTLiteralExpression) {// Yuan says windows - if (dbg_barrier) -- System.out.println("bdbg: communicator is IASTUnaryExpression"); //$NON-NLS-1$ -- comm_ = iastUnaryExpression.getRawSignature(); -- -+ System.out.println(); -+ IASTLiteralExpression comm = (IASTLiteralExpression) commOp; -+ comm_ = comm.toString(); -+ } else if (commOp instanceof IASTIdExpression) { // Yuan says linux -+ IASTIdExpression comm = (IASTIdExpression) commOp; -+ comm_ = comm.getName().toString(); -+ } else if (commOp instanceof IASTName) {// ? -+ comm_ = commOp.toString(); - } else { -- // last resort: use a unique name, but it won't -- // match anything?? -+ -+ if (commOp instanceof IASTUnaryExpression) {// Mac OSX Openmpi < 1.3 (/usr/include/mpi.h) // 4/14/10: got -+ // here OMPI 1.3.3 -+ IASTUnaryExpression iastUnaryExpression = (IASTUnaryExpression) commOp; -+ if (dbg_barrier) -+ System.out.println("bdbg: communicator is IASTUnaryExpression"); //$NON-NLS-1$ -+ comm_ = iastUnaryExpression.getRawSignature(); -+ -+ } else { -+ // last resort: use a unique name, but it won't -+ // match anything?? -+ comm_ = "COMM_" + commCounter; //$NON-NLS-1$ -+ commCounter++; -+ } -+ } -+ } else { -+ if (commOp instanceof IASTCastExpression) {// MAC OSX Openmpi 1.3.3 ;mpich2 -+ IASTCastExpression iastCastExpression = (IASTCastExpression) commOp; -+ comm_ = iastCastExpression.getRawSignature(); -+ } -+ else { - comm_ = "COMM_" + commCounter; //$NON-NLS-1$ - commCounter++; - } -+ - } -+ } else if (arguments[0] instanceof IASTIdExpression) {// windows mpich 1.2 -+ IASTIdExpression idE = (IASTIdExpression) arguments[0]; -+ comm_ = idE.getName().toString(); -+ -+ /* -+ * BRT 9/9/09: why hide the actual name? no non-mpi-comm-world comms will match! -+ * if (!comm_.equals("MPI_COMM_WORLD")) { -+ * comm_ = "COMM_" + commCounter; -+ * commCounter++; -+ * } -+ */ -+ } else if (arguments[0] instanceof IASTLiteralExpression) {// added 9/9/09 for windows/mpich -+ IASTLiteralExpression iastLiteralExpression = (IASTLiteralExpression) arguments[0]; -+ -+ String str = iastLiteralExpression.getRawSignature(); -+ comm_ = iastLiteralExpression.getRawSignature(); - } else { -- if (commOp instanceof IASTCastExpression) {// MAC OSX Openmpi 1.3.3 ;mpich2 -- IASTCastExpression iastCastExpression = (IASTCastExpression) commOp; -- comm_ = iastCastExpression.getRawSignature(); -- } -- else { -- comm_ = "COMM_" + commCounter; //$NON-NLS-1$ -- commCounter++; -- } -- -+ comm_ = "COMM_" + commCounter; //$NON-NLS-1$ -+ commCounter++; - } -- } else if (parameter instanceof IASTIdExpression) {// windows mpich 1.2 -- IASTIdExpression idE = (IASTIdExpression) parameter; -- comm_ = idE.getName().toString(); -- -- /* -- * BRT 9/9/09: why hide the actual name? no non-mpi-comm-world comms will match! -- * if (!comm_.equals("MPI_COMM_WORLD")) { -- * comm_ = "COMM_" + commCounter; -- * commCounter++; -- * } -- */ -- } else if (parameter instanceof IASTLiteralExpression) {// added 9/9/09 for windows/mpich -- IASTLiteralExpression iastLiteralExpression = (IASTLiteralExpression) parameter; -- -- String str = iastLiteralExpression.getRawSignature(); -- comm_ = iastLiteralExpression.getRawSignature(); -- } -- else { -- comm_ = "COMM_" + commCounter; //$NON-NLS-1$ -- commCounter++; - } - if (dbg_barrier) - System.out.println("setComm(): communicator: " + comm_); //$NON-NLS-1$ -diff --git a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPIBarrierExprModified.java b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPIBarrierExprModified.java -index 7c66353..390f38e 100644 ---- a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPIBarrierExprModified.java -+++ b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPIBarrierExprModified.java -@@ -43,6 +43,7 @@ import org.eclipse.cdt.core.dom.ast.IASTGotoStatement; - import org.eclipse.cdt.core.dom.ast.IASTIdExpression; - import org.eclipse.cdt.core.dom.ast.IASTIfStatement; - import org.eclipse.cdt.core.dom.ast.IASTInitializer; -+import org.eclipse.cdt.core.dom.ast.IASTInitializerClause; - import org.eclipse.cdt.core.dom.ast.IASTInitializerExpression; - import org.eclipse.cdt.core.dom.ast.IASTInitializerList; - import org.eclipse.cdt.core.dom.ast.IASTLabelStatement; -@@ -648,7 +649,7 @@ public class MPIBarrierExprModified extends ASTVisitor { - else if (expr instanceof IASTFunctionCallExpression) { - IASTFunctionCallExpression fExpr = (IASTFunctionCallExpression) expr; - IASTExpression funcname = fExpr.getFunctionNameExpression(); -- IASTExpression parameter = fExpr.getParameterExpression(); -+ IASTInitializerClause[] arguments = fExpr.getArguments(); - String signature = funcname.getRawSignature(); - int id = bTable_.isBarrier(fExpr); - if (id != -1) { /* barrier */ -@@ -657,7 +658,7 @@ public class MPIBarrierExprModified extends ASTVisitor { - for (Enumeration e = stacks_.keys(); e.hasMoreElements();) { - String commkey = e.nextElement(); - Stack sk = stacks_.get(commkey); -- if (parameter != null) -+ for (int i = 0; i < arguments.length; i++) // FIXME: check this is the correct thing to do - sk.pop(); // parameter - sk.pop(); // functionName - if (commkey.equals(comm)) -@@ -674,7 +675,7 @@ public class MPIBarrierExprModified extends ASTVisitor { - String comm = e.nextElement(); - Stack sk = stacks_.get(comm); - BarrierExpression funcBE = node.getBarrierExpr().get(comm); -- if (parameter != null) -+ for (int i = 0; i < arguments.length; i++) // FIXME: check this is the correct thing to do - sk.pop(); // parameter - sk.pop(); // functionName - if (node == currentNode_) { // recursive functions -@@ -692,7 +693,7 @@ public class MPIBarrierExprModified extends ASTVisitor { - be = new BarrierExpression(BarrierExpression.BE_bot); - for (Enumeration> e = stacks_.elements(); e.hasMoreElements();) { - Stack sk = e.nextElement(); -- if (parameter != null) -+ for (int i = 0; i < arguments.length; i++) // FIXME: check this is the correct thing to do - sk.pop(); // parameter - sk.pop(); // functionName - sk.push(be); -diff --git a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPIMVAnalysis.java b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPIMVAnalysis.java -index bd3d0d8..993013b 100644 ---- a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPIMVAnalysis.java -+++ b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPIMVAnalysis.java -@@ -98,17 +98,18 @@ public class MPIMVAnalysis { - IASTExpression funcname = funcE.getFunctionNameExpression(); - String signature = funcname.getRawSignature(); - if (signature.equals("MPI_Bcast")) { //$NON-NLS-1$ -- IASTExpression paramE = funcE.getParameterExpression(); -- IASTExpression[] params = ((IASTExpressionList) paramE).getExpressions(); -- IASTExpression dataE = params[0]; -- if (dataE instanceof IASTIdExpression) { -- IASTIdExpression ID = (IASTIdExpression) dataE; -- var = ID.getName().toString(); -- } else if (dataE instanceof IASTUnaryExpression) { -- IASTUnaryExpression uE = (IASTUnaryExpression) dataE; -- if (uE.getOperator() == IASTUnaryExpression.op_amper && uE.getOperand() instanceof IASTIdExpression) { -- IASTIdExpression ID = (IASTIdExpression) uE.getOperand(); -+ IASTInitializerClause[] arguments = funcE.getArguments(); -+ if (arguments.length > 0 && arguments[0] instanceof IASTExpression) { -+ IASTExpression dataE = (IASTExpression) arguments[0]; -+ if (dataE instanceof IASTIdExpression) { -+ IASTIdExpression ID = (IASTIdExpression) dataE; - var = ID.getName().toString(); -+ } else if (dataE instanceof IASTUnaryExpression) { -+ IASTUnaryExpression uE = (IASTUnaryExpression) dataE; -+ if (uE.getOperator() == IASTUnaryExpression.op_amper && uE.getOperand() instanceof IASTIdExpression) { -+ IASTIdExpression ID = (IASTIdExpression) uE.getOperand(); -+ var = ID.getName().toString(); -+ } - } - } - } -@@ -436,12 +437,7 @@ public class MPIMVAnalysis { - IASTFunctionCallExpression funcE = (IASTFunctionCallExpression) expr; - IASTExpression funcname = funcE.getFunctionNameExpression(); - String signature = funcname.getRawSignature(); -- IASTExpression parameter = funcE.getParameterExpression();// BRT -- // this -- // might -- // still -- // work!! -- funcE.getArguments(); -+ IASTInitializerClause[] arguments = funcE.getArguments(); - MPICallGraphNode cgNode = (MPICallGraphNode) cg_.getNode(currentNode_.getFileName(), signature); - if (cgNode != null) { // BRT always null on tiny.c. ?? - /* -@@ -451,7 +447,8 @@ public class MPIMVAnalysis { - * return value is MV or SV - */ - boolean returnval = false; -- if (parameter != null) { -+ if (arguments.length > 0 && arguments[0] instanceof IASTExpression) { -+ IASTExpression parameter = (IASTExpression) arguments[0]; - v1 = useDefMVMapping(parameter, side, funcE, l1); - // BRT note with CDT 7.0 the IASTExpressionList is not - // encountered in the AST -@@ -495,7 +492,8 @@ public class MPIMVAnalysis { - return returnval; - }// end if cgNode!=null - else { -- if (parameter != null) { -+ if (arguments.length > 0 && arguments[0] instanceof IASTExpression) { -+ IASTExpression parameter = (IASTExpression) arguments[0]; - v1 = useDefMVMapping(parameter, side, funcE, l1); - if (parameter instanceof IASTExpressionList) { - exprListMVContext_.pop(); -@@ -643,12 +641,10 @@ public class MPIMVAnalysis { - String signature = funcname.getRawSignature(); - func = (MPICallGraphNode) cg_.getNode(currentNode_.getFileName(), signature); - if (func != null) { -- IASTExpression parameter = funcExpr.getParameterExpression(); -- if (parameter instanceof IASTExpressionList) { -- IASTExpressionList paramListE = (IASTExpressionList) parameter; -- IASTExpression[] params = paramListE.getExpressions(); -- for (int i = 0; i < params.length; i++) { -- ExprMVAnalyzer ema = new ExprMVAnalyzer(params[i], block_.getMVvar(), block_); -+ IASTInitializerClause[] arguments = funcExpr.getArguments(); -+ for (int i = 0; i < arguments.length; i++) { -+ if (arguments[i] instanceof IASTExpression) { -+ ExprMVAnalyzer ema = new ExprMVAnalyzer(arguments[i], block_.getMVvar(), block_); - ema.run(); - if (ema.isMV()) { - String paramName = getFormalParamName(func, i); -@@ -657,15 +653,6 @@ public class MPIMVAnalysis { - } - } - } -- } else if (parameter != null) { -- ExprMVAnalyzer ema = new ExprMVAnalyzer(parameter, block_.getMVvar(), block_); -- ema.run(); -- if (ema.isMV()) { -- String paramName = getFormalParamName(func, 0); -- if (paramName != null) { -- func.getParamMV().put(paramName, new Boolean(true)); -- } -- } - } - } - } -@@ -739,7 +726,11 @@ public class MPIMVAnalysis { - return; - } - visitor(funcE.getFunctionNameExpression(), false, false); -- visitor(funcE.getParameterExpression(), inDeref, inAddr); -+ for (IASTInitializerClause argument: funcE.getArguments()) { -+ if (argument instanceof IASTExpression) { -+ visitor((IASTExpression) argument, inDeref, inAddr); -+ } -+ } - } else if (expr instanceof IASTIdExpression) { - IASTIdExpression ID = (IASTIdExpression) expr; - String var = ID.getName().toString(); -diff --git a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPISingleAssignAnalysis.java b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPISingleAssignAnalysis.java -index 3f0aee2..c30c68c 100644 ---- a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPISingleAssignAnalysis.java -+++ b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/MPISingleAssignAnalysis.java -@@ -419,13 +419,18 @@ public class MPISingleAssignAnalysis { - if (signature.equals("malloc") || signature.equals("calloc") || //$NON-NLS-1$ //$NON-NLS-2$ - signature.equals("realloc")) //$NON-NLS-1$ - return true; -- IASTExpression paramE = funcE.getParameterExpression(); -- if (paramE == null) -+ IASTInitializerClause[] arguments = funcE.getArguments(); -+ if (arguments.length == 0) - return false; -- if (paramE instanceof IASTExpressionList) -- v1 = saExpr(paramE, side, funcE, -1, d1, u1, lr1, rr1); -- else -- v1 = saExpr(paramE, side, funcE, 0, d1, u1, lr1, rr1); -+ for (int i = 0; i < arguments.length; i++) { -+ if (arguments[i] instanceof IASTExpression) { -+ v1 = v1 | saExpr((IASTExpression)arguments[i], side, funcE, i, d1, u1, lr1, rr1); -+ Util.addAll(def, d1); -+ Util.addAll(use, u1); -+ Util.addAll(ldf, lr1); -+ Util.addAll(rdf, rr1); -+ } -+ } - /* update assignment number of global var */ - MPICallGraphNode node = (MPICallGraphNode) cg_.getNode(currentNode_.getFileName(), signature); - if (node != null) { -@@ -564,20 +569,15 @@ public class MPISingleAssignAnalysis { - * Library function calls. Any parameter whose address - * is taken (pointer or array) is both defined and used. - */ -- IASTExpression parameterE = fE.getParameterExpression(); -- if (parameterE instanceof IASTExpressionList) { -- IASTExpressionList paramEList = (IASTExpressionList) parameterE; -- IASTExpression param = (paramEList.getExpressions())[index]; -- IType type = param.getExpressionType(); -- if (type instanceof IArrayType || -- type instanceof IPointerType) -- return 2; -- } -- else { -- IType type = parameterE.getExpressionType(); -- if (type instanceof IArrayType || -- type instanceof IPointerType) -- return 2; -+ IASTInitializerClause[] arguments = fE.getArguments(); -+ if (arguments.length > index) { -+ IASTInitializerClause argument = arguments[index]; -+ if (argument instanceof IASTExpression) { -+ IType type = ((IASTExpression)argument).getExpressionType(); -+ if (type instanceof IArrayType || -+ type instanceof IPointerType) -+ return 2; -+ } - } - } - return 0; -diff --git a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/UseDefBuilder.java b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/UseDefBuilder.java -index 94373c1..5a80d8b 100644 ---- a/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/UseDefBuilder.java -+++ b/tools/pldt/org.eclipse.ptp.pldt.mpi.analysis/src/org/eclipse/ptp/pldt/mpi/analysis/analysis/UseDefBuilder.java -@@ -295,13 +295,12 @@ public class UseDefBuilder extends ASTVisitor { - def_ = Util.Union(def_, n.getGlobalDef()); - use_ = Util.Union(use_, n.getGlobalUse()); - } -- IASTExpression paramE = funcE.getParameterExpression(); -- if (paramE == null) -- return; -- if (paramE instanceof IASTExpressionList) -- useDefSet(funcE.getParameterExpression(), side, funcE, -1); -- else -- useDefSet(funcE.getParameterExpression(), side, funcE, 0); -+ IASTInitializerClause[] arguments = funcE.getArguments(); -+ for (int i = 0; i < arguments.length; i++) { -+ if (arguments[i] instanceof IASTExpression) { -+ useDefSet((IASTExpression)arguments[i], side, funcall, i); -+ } -+ } - } - else if (expr instanceof IASTIdExpression) { - IASTIdExpression id = (IASTIdExpression) expr; -@@ -416,20 +415,15 @@ public class UseDefBuilder extends ASTVisitor { - * Library function calls. Any parameter whose address - * is taken (pointer or array) is both defined and used. - */ -- IASTExpression parameterE = fE.getParameterExpression(); -- if (parameterE instanceof IASTExpressionList) { -- IASTExpressionList paramEList = (IASTExpressionList) parameterE; -- IASTExpression param = (paramEList.getExpressions())[index]; -- IType type = param.getExpressionType(); -- if (type instanceof IArrayType || -- type instanceof IPointerType) -- return true; -- } -- else { -- IType type = parameterE.getExpressionType(); -- if (type instanceof IArrayType || -- type instanceof IPointerType) -- return true; -+ IASTInitializerClause[] arguments = fE.getArguments(); -+ if (arguments.length > index) { -+ IASTInitializerClause argument = arguments[index]; -+ if (argument instanceof IASTExpression) { -+ IType type = ((IASTExpression)argument).getExpressionType(); -+ if (type instanceof IArrayType || -+ type instanceof IPointerType) -+ return true; -+ } - } - } - return false; -diff --git a/tools/pldt/org.eclipse.ptp.pldt.openmp.analysis/src/org/eclipse/ptp/pldt/openmp/analysis/PAST/PASTFunctionMacro.java b/tools/pldt/org.eclipse.ptp.pldt.openmp.analysis/src/org/eclipse/ptp/pldt/openmp/analysis/PAST/PASTFunctionMacro.java -index 34af97c..b7fedab 100644 ---- a/tools/pldt/org.eclipse.ptp.pldt.openmp.analysis/src/org/eclipse/ptp/pldt/openmp/analysis/PAST/PASTFunctionMacro.java -+++ b/tools/pldt/org.eclipse.ptp.pldt.openmp.analysis/src/org/eclipse/ptp/pldt/openmp/analysis/PAST/PASTFunctionMacro.java -@@ -60,16 +60,6 @@ public class PASTFunctionMacro extends PASTNode implements IASTPreprocessorFunct - return macro_.getName(); - } - -- @SuppressWarnings("deprecation") -- public void setExpansion(String exp) { -- macro_.setExpansion(exp); -- } -- -- @SuppressWarnings("deprecation") -- public void setName(IASTName name) { -- macro_.setName(name); -- } -- - public void addParameter(IASTFunctionStyleMacroParameter parm) { - macro_.addParameter(parm); - } -diff --git a/tools/pldt/org.eclipse.ptp.pldt.openmp.analysis/src/org/eclipse/ptp/pldt/openmp/analysis/PAST/PASTObjectMacro.java b/tools/pldt/org.eclipse.ptp.pldt.openmp.analysis/src/org/eclipse/ptp/pldt/openmp/analysis/PAST/PASTObjectMacro.java -index cdb71e1..aad82ce 100644 ---- a/tools/pldt/org.eclipse.ptp.pldt.openmp.analysis/src/org/eclipse/ptp/pldt/openmp/analysis/PAST/PASTObjectMacro.java -+++ b/tools/pldt/org.eclipse.ptp.pldt.openmp.analysis/src/org/eclipse/ptp/pldt/openmp/analysis/PAST/PASTObjectMacro.java -@@ -64,16 +64,6 @@ public class PASTObjectMacro extends PASTNode implements IASTPreprocessorObjectS - return objMacro_.getName(); - } - -- @Deprecated -- public void setExpansion(String exp) { -- objMacro_.setExpansion(exp); -- } -- -- @Deprecated -- public void setName(IASTName name) { -- objMacro_.setName(name); -- } -- - public IASTFileLocation getExpansionLocation() { - return objMacro_.getExpansionLocation(); - } --- -cgit v0.11.2-4-g4a35 - - diff --git a/eclipse-ptp.spec b/eclipse-ptp.spec index 3e24348..95984d0 100644 --- a/eclipse-ptp.spec +++ b/eclipse-ptp.spec @@ -1,5 +1,4 @@ -%global ptp_qualifier 201606021530 -%global ptp_git_tag PTP_9_1_0 +%global ptp_git_tag 5159d58c7f9f98a166dd19b52a923099ef2ddee9 %ifarch %{ix86} %global eclipse_arch x86 @@ -16,8 +15,8 @@ Summary: Eclipse Parallel Tools Platform Name: eclipse-ptp -Version: 9.1.0 -Release: 4%{?dist} +Version: 9.1.1 +Release: 1%{?dist} License: EPL URL: http://www.eclipse.org/ptp @@ -32,8 +31,11 @@ BuildRequires: eclipse-cdt-parsers BuildRequires: eclipse-license BuildRequires: eclipse-jgit BuildRequires: eclipse-pde +# No photran on RHEL +%if ! 0%{?rhel} BuildRequires: eclipse-photran-intel BuildRequires: eclipse-photran-xlf +%endif BuildRequires: eclipse-remote BuildRequires: eclipse-tm-terminal BuildRequires: eclipse-tm-terminal-connectors @@ -85,14 +87,17 @@ This package contains the main PTP run-time features. Summary: Complete PTP package #master package is a virtual package that requires all of the components Requires: %{name} = %{version}-%{release} +# No photran on RHEL +%if ! 0%{?rhel} Requires: %{name}-etfw-tau = %{version}-%{release} Requires: %{name}-etfw-tau-fortran = %{version}-%{release} Requires: %{name}-fortran = %{version}-%{release} -Requires: %{name}-gem = %{version}-%{release} Requires: %{name}-pldt-fortran = %{version}-%{release} Requires: %{name}-pldt-upc = %{version}-%{release} Requires: %{name}-rdt-sync-fortran = %{version}-%{release} +%endif Requires: %{name}-rm-contrib = %{version}-%{release} +Requires: %{name}-gem = %{version}-%{release} Requires: %{name}-sci = %{version}-%{release} Requires: %{name}-sdm = %{version}-%{release} @@ -100,6 +105,8 @@ Requires: %{name}-sdm = %{version}-%{release} The package will bring in all of the PTP components. +# No photran on RHEL +%if ! 0%{?rhel} %package etfw-tau Summary: PTP External Tools Framework TAU Support BuildArch: noarch @@ -129,26 +136,6 @@ Requires: %{name}-rdt-sync-fortran = %{version}-%{release} Adds Fortran support to PTP. -%package gem -Summary: PTP Graphical Explorer of MPI Programs (GEM) -BuildArch: noarch - -%description gem -GEM serves as a graphical front end for In-situ Partial Order (ISP), a -dynamic formal verification tool for MPI developed at the School of -Computing, University of Utah. - -Whether you are new to MPI or are an advanced user, GEM will help you debug -your MPI programs, and graphically show many valuable facts, including all -the possible send/receive matches, and synchronizations. GEM also includes -features to help users understand and debug the program across all platforms -on which it may be run (e.g. highlighting deadlocks that may occur due to -differing communication buffer allocations). For a given test harness, GEM -will allow you to explore only the relevant process interleavings, which are -much smaller than the number of total feasible interleavings. GEM also -guarantees to discover and explore all non-deterministic matches at run-time. - - %package pldt-fortran Summary: PTP Parallel Language Development Tools Fortran Support BuildArch: noarch @@ -173,6 +160,7 @@ BuildArch: noarch %description rdt-sync-fortran Adds the ability to remotely synchronize Fortran projects. +%endif %package rm-contrib @@ -183,6 +171,26 @@ BuildArch: noarch Adds resource managers for a number of different systems. +%package gem +Summary: PTP Graphical Explorer of MPI Programs (GEM) +BuildArch: noarch + +%description gem +GEM serves as a graphical front end for In-situ Partial Order (ISP), a +dynamic formal verification tool for MPI developed at the School of +Computing, University of Utah. + +Whether you are new to MPI or are an advanced user, GEM will help you debug +your MPI programs, and graphically show many valuable facts, including all +the possible send/receive matches, and synchronizations. GEM also includes +features to help users understand and debug the program across all platforms +on which it may be run (e.g. highlighting deadlocks that may occur due to +differing communication buffer allocations). For a given test harness, GEM +will allow you to explore only the relevant process interleavings, which are +much smaller than the number of total feasible interleavings. GEM also +guarantees to discover and explore all non-deterministic matches at run-time. + + %package sci Summary: PTP Scalable Communication Infrastructure (SCI) BuildArch: noarch @@ -229,6 +237,43 @@ TYCHO_ENV="linuxgtk%{eclipse_arch}> releng/org.eclipse.ptp.linux/META-INF/MANIFEST.MF +# Qualifier generated from last modification time of source tarball +QUALIFIER=$(date -u -d"$(stat --format=%y %{SOURCE0})" +%Y%m%d%H%M) # Build the project -%mvn_build -j -- -DforceContextQualifier=%{ptp_qualifier} +%mvn_build -j -- -DforceContextQualifier=$QUALIFIER %install @@ -293,6 +340,8 @@ ln -s %{_libdir}/eclipse/droplets/ptp-sdm/eclipse/plugins/$plugin/os/linux/%{ecl %files master %doc releng/org.eclipse.ptp-feature/epl-v10.html +# No photran on RHEL +%if ! 0%{?rhel} %files etfw-tau -f .mfiles-etfw-tau %doc releng/org.eclipse.ptp-feature/epl-v10.html @@ -302,9 +351,6 @@ ln -s %{_libdir}/eclipse/droplets/ptp-sdm/eclipse/plugins/$plugin/os/linux/%{ecl %files fortran -f .mfiles-fortran %doc releng/org.eclipse.ptp-feature/epl-v10.html -%files gem -f .mfiles-gem -%doc releng/org.eclipse.ptp-feature/epl-v10.html - %files pldt-fortran -f .mfiles-pldt-fortran %doc releng/org.eclipse.ptp-feature/epl-v10.html @@ -313,10 +359,14 @@ ln -s %{_libdir}/eclipse/droplets/ptp-sdm/eclipse/plugins/$plugin/os/linux/%{ecl %files rdt-sync-fortran -f .mfiles-rdt-sync-fortran %doc releng/org.eclipse.ptp-feature/epl-v10.html +%endif %files rm-contrib -f .mfiles-rm-contrib %doc releng/org.eclipse.ptp-feature/epl-v10.html +%files gem -f .mfiles-gem +%doc releng/org.eclipse.ptp-feature/epl-v10.html + %files sci -f .mfiles-sci %doc releng/org.eclipse.ptp-feature/epl-v10.html @@ -329,6 +379,11 @@ ln -s %{_libdir}/eclipse/droplets/ptp-sdm/eclipse/plugins/$plugin/os/linux/%{ecl %changelog +* Wed Oct 05 2016 Mat Booth - 9.1.1-1 +- Update to latest release +- Disable photran bits when building on RHEL +- Don't hard-code qualifier + * Tue Aug 23 2016 Alexander Kurtakov 9.1.0-4 - Add BR on eclipse-tm-terminal-connectors to unbreak build. diff --git a/sources b/sources index 44780c6..3f6cc32 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -f44feb25c244a436a90bfa0550141be6 org.eclipse.ptp-PTP_9_1_0.tar.xz +8fd5351abfa6ae6debb340e617d41d13 org.eclipse.ptp-5159d58c7f9f98a166dd19b52a923099ef2ddee9.tar.xz