This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [trans-mem] issue with openmp


On 07/06/2010 11:12 AM, Aldy Hernandez wrote:
> On Tue, Jul 06, 2010 at 10:48:20AM -0700, Richard Henderson wrote:
>> On 07/06/2010 09:29 AM, Aldy Hernandez wrote:
>>> -__attribute__((transaction_pure))
>>> -extern void _ITM_dropReferences (void *, size_t) ITM_REGPARM;
>>> +extern void _ITM_dropReferences (void *, size_t) ITM_REGPARM ITM_PURE;
>>> +
>>> +__attribute__((__malloc__)) ITM_REGPARM ITM_PURE
>>> +extern void *_ITM_malloc (size_t);
>>> +__attribute__((__malloc__)) ITM_REGPARM ITM_PURE
>>> +extern void *_ITM_calloc (size_t, size_t);
>>> +extern  void _ITM_free (void *) ITM_REGPARM ITM_PURE;
>>
>> I'm not sure that _ITM_malloc et al should include ITM_REGPARM.
> 
> Arghh, I was getting confused by a complaint by Patrick about a
> %eax<->%rax problem in the calling sequence, but that must be something
> different because I can't reproduce it.

That was due to C's implicit type of "int" for undeclared functions.

> 	* libitm.h (ITM_PURE): Define.
> 	Declare _ITM_malloc, _ITM_calloc, and _ITM_free.

Ok.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]