This is the mail archive of the gcc@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: [PATCH] Use lwsync in PowerPC sync_* builtins


 
Hi David,

> My one other concern is developers using the builtins for applications on
> embedded PowerPC processors.  lwsync will not order accesses to device
> memory space, AFAICT.  I do not know if developers would rely on GCC builtins
> in that context and assume it implements the correct semantics.  Otherwise,
> I agree that the memory barrier operations probably can use lwsync.

Thats a good point, but I think embedded driver writers need to create
their own synchronisation macros (like Linux and Xorg do). The current
gcc builtins only solve some of the issues for drivers and I worry it
will give a false confidence if we say they can be used for IO. A few
places they will trip up on PowerPC:

- eieio required to enforce ordering between non cacheable loads and stores.
- eieio doesn't order cacheable and non cacheable storage accesses.

To get it right they are going to need IO macros etc.

Anton


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