Fuse tight composer

I think that we’ll just need to keep this issue in the back of our minds. At some point in time we’ll need to diagram the interactions between analyses and identify all the points in the code where information may be learned or data structures may be modified. This will tell us what flexibility we have in updating object information.

Greg Bronevetsky
Lawrence Livermore National Lab
(925) 424-5756
bronevetsky@llnl.gov<mailto:bronevetsky@llnl.gov>
http://greg.bronevetsky.com

From: Sriram Aananthakrishnan [mailto:notifications@github.com]
Sent: Wednesday, June 11, 2014 10:55 AM
To: sriram87/edg4x-rose
Cc: bronevet
Subject: Re: [edg4x-rose] Fuse tight composer (#4)


In projects/fuse/src/analysis/abstract_object.C:

> +  // 2. mostAccurate = false return true

> +  // After iterating none of the objects returned false.

> +  return !mostAccurate;

> +}

> +

> +

> +//! Discharge the query to the corresponding ML

> +//! If key not found in thatMLMap return false

> +template<class Key, bool mostAccurate>

> +bool MappedMemLocObject<Key, mostAccurate>::equalSetMLWithKey(Key key,

> +                                                              const map<Key, MemLocObjectPtr>& thatMLMap,

> +                                                              PartEdgePtr pedge) {

> +  typename map<Key, MemLocObjectPtr>::const_iterator s_it;

> +  s_it = thatMLMap.find(key);

> +  if(s_it == thatMLMap.end()) return false;

> +  return memLocsMap[key]->equalSetML(s_it->second, pedge);

I thought about this. The only two locations of possible object mutations are add method and meetUpdate. I handle the map at these points appropriately. The queries dont modify the data.

—
Reply to this email directly or view it on GitHub<https://github.com/sriram87/edg4x-rose/pull/4/files#r13663668>.