On 10/01/2014 03:08 PM, Ian Lance Taylor wrote: >> func TestMakeFunc(t *testing.T) { >> switch runtime.GOARCH { >> case "amd64", "386": >> default: >> t.Skip("MakeFunc not implemented for " + runtime.GOARCH) >> } > > Wait, what sources are you looking at? I took that out on July 19.
Err.. too many different ones, apparently. Sorry for the confusion. > Partly historical reasons. I wrote the x86 support because I didn't > know that libffi had closures. But then even using closures, the x86 > support looks a lot nicer: it doesn't have to call mmap. All the mmap > stuff is elegant and is necessary for C style function pointers, but > it's not necessary for Go func values since they carry their own > closures anyhow. So, yes, I think we should write direct > implementations for other targets that we care about. Ok. I'd forgotten about the extra mmap overhead implied by libffi closures. r~