Java: add flag_use_atomic_builtins

Paolo Bonzini bonzini@gnu.org
Wed Aug 12 18:08:00 GMT 2009


Andrew Haley wrote:
> Andrew Haley wrote:
>> Paolo Bonzini wrote:
>>> On 08/12/2009 06:52 PM, Andrew Haley wrote:
>>>> Joseph S. Myers wrote:
>>>>> On Wed, 12 Aug 2009, Andrew Haley wrote:
>>>>>
>>>>>> Some targets, particularly ARM, don't have instructions for things
>>>>>> such as sync_compare_and_swap.  Instead, a routine in libgcc is
>>>>>> used.  This patch adds a new gcj option, -fuse-atomic-builtins,
>>>>>> which causes gcj to use the routines in libgcc whenever atomic
>>>>>> operations are needed.
>>>>> Wouldn't a target hook to allow a target to declare which operations it
>>>>> provides in libgcc be better than a command-line option?
>>>> Maybe it would.  I'm happy to work with anyone to create such a
>>>> thing.  What would such a hook look like, and how would a front-
>>>> end use it?
>>> Couldn't optabs be (re)used?
>> That would be nice.
> 
> I guess that's just a matter of
> 
>   set_optab_libfunc (sync_compare_and_swap_optab, SImode,, SImode, SImode "__sync_bool_compare_and_swap_4");
> 
> or somesuch?

Yes, that's what I was too lazy to look up.  Then possibly the
middle-end needs to be taught about it rather than the front-end, I
don't know.

Paolo



More information about the Java-patches mailing list