Skip to content

Commit

Permalink
#295, bugfix to AddInitializingEdgesIcfgTransformer.splitLocation(..)
Browse files Browse the repository at this point in the history
  • Loading branch information
alexandernutz committed Oct 10, 2018
1 parent 5cac340 commit b0b52e4
Showing 1 changed file with 7 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -249,18 +249,23 @@ private void processLocationsOmitInitEdges(final Set<INLOC> initLocations,
private Pair<OUTLOC, OUTLOC> splitLocation(final INLOC oldInitTarget, final String containingprocedure) {
Pair<OUTLOC, OUTLOC> p;
{
final boolean wasProcedureEntryNode = !mInputIcfg.getProcedureEntryNodes().isEmpty()
&& mInputIcfg.getProcedureEntryNodes().get(containingprocedure).equals(oldInitTarget);
final OUTLOC s1 = createAndAddNewLocation(oldInitTarget,
mInputIcfg.getInitialNodes().contains(oldInitTarget),
false,
mInputIcfg.getProcedureEntryNodes().get(containingprocedure).equals(oldInitTarget),
wasProcedureEntryNode,
false,
false,
new SuffixedDebugIdentifier(oldInitTarget.getDebugIdentifier(), "_split-1"));

final boolean wasProcedureExitNode = !mInputIcfg.getProcedureExitNodes().isEmpty()
&& mInputIcfg.getProcedureExitNodes().get(containingprocedure).equals(oldInitTarget);
final OUTLOC s2 = createAndAddNewLocation(oldInitTarget, false,
mInputIcfg.getProcedureErrorNodes().get(containingprocedure)
.contains(oldInitTarget),
false,
mInputIcfg.getProcedureExitNodes().get(containingprocedure).equals(oldInitTarget),
wasProcedureExitNode,
mInputIcfg.getLoopLocations().contains(oldInitTarget),
new SuffixedDebugIdentifier(oldInitTarget.getDebugIdentifier(), "_split-2"));
p = new Pair<>(s1, s2);
Expand Down

0 comments on commit b0b52e4

Please sign in to comment.