|
From: Julian S. <js...@ac...> - 2002-11-22 07:00:18
|
> > The problem appears to be how to get hold of %eip (the real one) when > > a skin calls a helper function, in a way which is not skin-specific. > > I thought about this this evening for some considerable time, but I > > can't think of a clean solution which doesn't involve some amount of > > performance loss. The least-worst thing I thought of was to associate > > with CCALL uinstrs a boolean flag, which when set automagically causes > > the current %eip to get passed to the called function as an extra > > parameter. This at least makes it skin-independent. > > But we have a VG_(get_EIP)() function. Why can't skins just use that, > and we hide all the complexity in that function? Why does a skin need > to know about the hardware %eip? Um, I'm confused. I don't understand how to solve the following problem: memcheck calls a helper function to do a check, concludes there's an error and needs %EIP. How exactly do you propose to generate it if you don't know %eip at the point where the helper was called? > That's nice and simple to implement. It's a good start. Has anyone > looked to see what the proportions of the different comparisons are? I > would expect Z and NZ would be way up there... I bet Hennessy and Patterson has this info. I'll look. J |