You could study Rob Pike’s coverage/profiling tool to see how he adds and exploits basic block counting. Good work as always.
On Thu, Nov 15, 2018 at 9:34 AM Robert Engels <[email protected]> wrote: > AFAIK dtrace support is compiled in. If not enabled there are some tricks > to make is essentially zero cost, but it is still there from the start. > Could be wrong but that’s my understanding. > > Sent from my iPhone > > On Nov 15, 2018, at 11:27 AM, Steven Hartland <[email protected]> > wrote: > > dtrace support? > > On 15/11/2018 16:51, [email protected] wrote: > > Hi, > > I am working on dynamic instrumentation of Go programs at run time, > possibly without static source-code instrumentation. As I would like a > solution as close to Go and standard as possible, I was first thinking of > using `go generate` to generate a file adding things `reflect` doesn't > provide such as the list of packages, functions, global variables... That > way, I should be able to use `reflect` to modify any dynamic calls by > modifying the method tables of their underlying type representations. > > But regarding statically linked calls, the less intrusive technique I > found are uprobes, which is linux-specific. And at the opposite, there are > user-space binary code instrumentation libraries such as dyninst that > modify the code at run time... > > So I am wondering if anyone here has any thoughts on this subject, that > doesn't seem to be solved for Go programs. > > Thanks! > > Julio > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- *Michael T. [email protected] <[email protected]>* -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
