sjiang1 / funcwatch

A tool that logs I/O values of C functions using LibDWARF.
GNU General Public License v3.0
2 stars 0 forks source link

Refactor the data structure that represents parameters of a function call #19

Closed sjiang1 closed 8 years ago

sjiang1 commented 8 years ago

Current implementation: funcwatch_params \ params the first level is an array, each element denotes a list of parameter values recorded in a call (each element corresponds to a call id) the second level is a list of values, each element/value denotes a value of a parameter. A parameter may have multiple elements in the list (e.g., for struct type, every field occupies an element.)

New implementation: the first level will not change. the second level will be a list of parameters. Each element/parameter will be a Vector, which stores the values of a parameter. (So actually, we have three levels)

Rationale in the current implementation, we have no easy way to tell what values compose a parameter.

sjiang1 commented 8 years ago

finished in 2d1e6de77619f798b7e156ccbfdf98f1ae1ff6d8 needs to be tests.