[gofrontend-dev] [PATCH 1/2, libgo] Add reflection support to gccgo for ppc64, ppc64le in gcc 4.9

Lynn A. Boger laboger@linux.vnet.ibm.com
Thu Jan 8 16:22:00 GMT 2015


The only bugs I am aware of when using reflection on ppc64 & ppc64le in 
gcc 4.9 are in the gccgo testcase recover.go and what is needed to build 
Docker.  When I run the gccgo testsuite and see a failing testcase with 
a panic message saying that a function is not implemented it makes me 
think some major pieces are missing so that is why I've used that 
phrase.  Also I noticed that the libgo/go/reflect/all_test.go testcase 
is not running some tests when GOARCH is ppc64 or ppc64le, and if those 
are enabled they fail.  So some might call those "bugs" or 
"unimplemented features" or "missing support".  To me, a message saying 
that something is not implemented is considered missing support even 
though it might be minor.

The information I received from those who had attempted to build Docker 
on ppc64le in gcc 4.9 said that it needed reflection and it wasn't there 
and this patch was used to make it work.

I hope that answers your question?  I have not done a thorough 
testing/investigation of reflection in gccgo 4.9 on Power and my 
statement refers only on the above information.

On 01/08/2015 08:53 AM, Ian Lance Taylor wrote:
> On Thu, Jan 8, 2015 at 5:44 AM, Lynn A. Boger
> <laboger@linux.vnet.ibm.com> wrote:I
>> Also as was noted below, some level of reflection support is needed to build
>> Docker.
> Sorry to be so pedantic, but I'm just trying to clarify that you keep
> saying "reflection support," but reflection support is there.  What is
> missing is a miniscule rarely used part of the reflect package, namely
> support for reflect.MakeFunc, and, it's true, calling reflect.ValueOf,
> then Method or MethodByName, then Interface.
>
> Ian
>
>
>



More information about the Gcc-patches mailing list