From 12c5275c6c9e29fc37ee98cf01e96d4a3cc74e6e Mon Sep 17 00:00:00 2001 From: bdemsky Date: Thu, 31 Aug 2006 07:04:08 +0000 Subject: [PATCH] consistency checking hooks added --- Robust/src/IR/Flat/BuildCode.java | 14 +++++++++++ Robust/src/IR/Flat/BuildFlat.java | 15 +++++++++++- Robust/src/IR/Flat/FlatCheckNode.java | 16 +++++++++---- Robust/src/IR/Tree/BuildIR.java | 9 ++++--- Robust/src/IR/Tree/ConstraintCheck.java | 32 +++++++++++++++---------- Robust/src/IR/Tree/SemanticCheck.java | 22 ++++++----------- Robust/src/Parse/java14.cup | 6 ++--- 7 files changed, 75 insertions(+), 39 deletions(-) diff --git a/Robust/src/IR/Flat/BuildCode.java b/Robust/src/IR/Flat/BuildCode.java index 1dea8b46..94d65597 100644 --- a/Robust/src/IR/Flat/BuildCode.java +++ b/Robust/src/IR/Flat/BuildCode.java @@ -906,6 +906,9 @@ public class BuildCode { case FKind.FlatNop: output.println("/* nop */"); return; + case FKind.FlatCheckNode: + generateFlatCheckNode(fm, (FlatCheckNode) fn, output); + return; case FKind.FlatFlagActionNode: generateFlatFlagActionNode(fm, (FlatFlagActionNode) fn, output); return; @@ -914,6 +917,17 @@ public class BuildCode { } + private void generateFlatCheckNode(FlatMethod fm, FlatCheckNode fcn, PrintWriter output) { + output.print(fcn.getSpec()+"("); + TempDescriptor[] temps=fcn.getTemps(); + for(int i=0;i0) + str+=","; + str+=getArg(i).printNode(0); + } + return str+")"; } } diff --git a/Robust/src/IR/Tree/SemanticCheck.java b/Robust/src/IR/Tree/SemanticCheck.java index a4abfbd4..eb1b5ec2 100644 --- a/Robust/src/IR/Tree/SemanticCheck.java +++ b/Robust/src/IR/Tree/SemanticCheck.java @@ -78,24 +78,16 @@ public class SemanticCheck { checkTypeDescriptor(fd.getType()); } - public void checkConstraintCheck(TaskDescriptor td, Vector ccs) { + public void checkConstraintCheck(TaskDescriptor td, SymbolTable nametable, Vector ccs) { if (ccs==null) return; /* No constraint checks to check */ for(int i=0;i