Hi Renato,

 

Thanks a lot for the info.

Attached is the updated patch.

 

Thanks,

Weiming

 

 

Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by 
The Linux Foundation

 

From: Renato Golin [mailto:[email protected]] 
Sent: Monday, September 30, 2013 12:57 AM
To: Zhao
Cc: İsmail Dönmez; Clang Commits
Subject: Re: Bug fix 12730: Add support for 
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1, 2, 4, 8} on ARM

 

Hi Weiming,

 

As far as I understand, atomic operations are available since ARMv6 (ex. 
ARM11), but not in v6M (ex. Cortex-M0), so you might need to change your 
condition a little.

 

cheers,

--renato

 

On 25 September 2013 19:15, Weiming Zhao <[email protected]> wrote:

Hi,

 

Please review the attached patch. I added the macro definitions for ARMv7 or up.

 

Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by 
The Linux Foundation

 

From: İsmail Dönmez [mailto:[email protected]] 
Sent: Wednesday, September 25, 2013 2:44 AM
To: [email protected]
Cc: Eli Friedman; [email protected]


Subject: Re: Bug fix 12730: Add support for 
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1, 2, 4, 8} on ARM

 

Hi,

 

On Sat, Sep 7, 2013 at 2:08 AM, Weiming Zhao <[email protected]> wrote:

Hi Eli,

 

I didn’t find much info about atomics for targets. I find two attributes are 
relevant: MaxAtomicPromoteWidth and  MaxAtomicInlineWidth, but they cannot be 
used to compute the macros.

Besides, even for the same target, the macros are dependent on CPU types. For 
example, for X86 target:

  if (CPU >= CK_i486) {

    Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1");

    Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2");

    Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4");

  }

  if (CPU >= CK_i586)

    Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8");

}

 

How about adding these macros for only ARMv7 and up? Without this patch 
std::thread just fails on ARM so it would be rather nice to have this fixed in 
clang 3.4 release. 

 

Regards.

 


_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

 

Attachment: 0003-PATCH-PR-12730-Add-_GCC_HAVE_SYNC_COMPARE_AND_SWAP-m.patch
Description: Binary data

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to