RFR (M): Enable HotSpot build with Clang
Christian Thalinger
christian.thalinger at oracle.com
Thu May 30 11:32:06 PDT 2013
On May 30, 2013, at 10:36 AM, Christian Thalinger <christian.thalinger at oracle.com> wrote:
>
> On May 28, 2013, at 11:03 AM, Christian Thalinger <christian.thalinger at oracle.com> wrote:
>
>>
>> On May 26, 2013, at 7:42 PM, David Holmes <david.holmes at oracle.com> wrote:
>>
>>> <trimming>
>>>
>>> On 25/05/2013 6:39 PM, Volker Simonis wrote:
>>>> On Fri, May 24, 2013 at 5:32 PM, Christian Thalinger
>>>> <christian.thalinger at oracle.com <mailto:christian.thalinger at oracle.com>>
>>>> wrote:
>>>> Will you change Linux to also reuse the GCC files and remove these
>>>> ifdefs?
>>>>
>>>>
>>>> OK, if you insist so badly :)
>>>>
>>>> http://cr.openjdk.java.net/~simonis/webrevs/8015252.v2/
>>>>
>>>> I've tried not to change anything in the default gcc build with the one
>>>> exception that i486 will now use '-g' instead of '-gstabs' as well which
>>>> I think should be OK. But you can easily change that if you'd like.
>>>
>>> This needs to be changed back. There is a lot of history here and these flags tend to oscillate, but before you can change them we need to establish exactly what the size impact will be and make sure our build systems can cope with the change.
>>
>> I'll change it back. -- Chris
>
> Here is what I have after merging in your new changes:
>
> http://cr.openjdk.java.net/~twisti/8015252/webrev/
>
> I see two problems:
>
> 1) It's not possible to turn off precompiled headers because of this:
>
> + ifeq ($(USE_CLANG), true)
> + # clang has precompiled headers support by default, but the user can switch
> + # it off by using 'USE_PRECOMPILED_HEADER=0' on the compile command line.
> + ifdef LP64
> + USE_PRECOMPILED_HEADER=1
> + else
Let me rephrase that: at least not with an environment variable.
-- Chris
>
> 2) If I compile with clang on Mac and run the compiler regression tests a lot of them fail but they work with a debug VM. So it seems that one of the files is broken with optimization on (-Os or -O3; -O0 is okay).
>
> Do you have any problems on Linux?
>
> -- Chris
>
>>
>>>
>>> David
>>> -----
>>>
>>>> Please notice that I won't be in the office until the 3rd of June.
>>>> Should you have any further change requests please feel free to edit the
>>>> patch yourself if you like.
>>>>
>>>> Regards,
>>>> Volker
>>>>
>>>> -- Chris
>>>>
>>>>> -- Chris
>>>>>
>>>>>>
>>>>>>
>>>>>>> But you can say the exact same thing about the Solaris
>>>>>> gcc support.
>>>>>>
>>>>>> Btw. I just trying to resurrect this.
>>>>>>
>>>>>> -- Chris
>>>>>>
>>>>>>>
>>>>>>> David
>>>>>>> -----
>>>>>>>
>>>>>>>> Once it's in we could start with the JDK forest and
>>>>>> the configure part
>>>>>>>> in the base repository. That would require two extra
>>>>>> change sets anyway.
>>>>>>>> The HotSpot build currently isn't very
>>>>>> configure-agnostic anyway and
>>>>>>>> once the other parts have been completed, configure
>>>>>> could just pass
>>>>>>>> USE_CLANG=true (plus perhaps some extra variables in
>>>>>> the case we have
>>>>>>>> more than one clang version on the system) to the
>>>>>> HotSpot build and
>>>>>>>> everything should work.
>>>>>>>> As a last step we would have to test on Mac as well.
>>>>>> I currently don't
>>>>>>>> have one at hand, but sponsors are always welcome:)
>>>>>>>>
>>>>>>>> Volker
>>>>>>>>
>>>>>>>>
>>>>>>>> David H.
>>>>>>>>
>>>>>>>> -- Chris
>>>>>>>>
>>>>>>>>
>>>>>>>> David
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>
>
More information about the hotspot-runtime-dev
mailing list