{"shas":[["5fb7852f2a96213b6c5ab325fadeac08df40931b","afbb795bdef18d2fc9a9700a123c1625d2784a81@ieee.org","TeslaAssertion needs to gather much more data.\n\nWe need these changes in order to answer questions like, \"which of the referenced variables being passed to __tesla_event_assertion(...) belong to the function mac_check_vnode_write() which we hope has been run?\"\n\nThis is required for implementing DONTCARE in the assertion compiler; we need to know which parameters passed into __tesla_event_prologue() must be retained for __tesla_event_return().","Jonathan Anderson"],["bfca3290b725d013308c0325484d0c54cc824372","afbb795bdef18d2fc9a9700a123c1625d2784a81@ieee.org","Write variables for template-based C generation.\n\nWe are going to want to automatically generate instrumentation bookkeeping code based on C templates. This change allows us to write out variables with names like STORAGE (which produces TESLA_SCOPE_(GLOBAL|PERTHREAD)) and EXTRACT_STATE (which produces lines like 'struct vnode *vp = (struct vnode *) tip->ti_state[3]) to be inserted into these templates.","Jonathan Anderson"]],"repo":"trombonehero/clang","actor":"trombonehero","ref":"refs/heads/tesla","size":2,"head":"bfca3290b725d013308c0325484d0c54cc824372","actor_gravatar":"b8dcd1591163953eb83b1e3a28af3645","push_id":26948334}