Changeset 0259524 in mainline for arch/ia64/include/barrier.h


Ignore:
Timestamp:
2005-11-03T20:26:29Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
05d9dd89
Parents:
dbd1059
Message:

IA-64 work.
Add some asm functions for manipulation with PSR, AR and CR registers.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/ia64/include/barrier.h

    rdbd1059 r0259524  
    3333 * TODO: Implement true IA-64 memory barriers for macros below.
    3434 */
    35 #define CS_ENTER_BARRIER()      __asm__ volatile ("" ::: "memory")
    36 #define CS_LEAVE_BARRIER()      __asm__ volatile ("" ::: "memory")
     35#define CS_ENTER_BARRIER()      memory_barrier()
     36#define CS_LEAVE_BARRIER()      memory_barrier()
    3737
    38 #define memory_barrier()
    39 #define read_barrier()
    40 #define write_barrier()
     38#define memory_barrier()        __asm__ volatile ("mf\n" ::: "memory")
     39#define read_barrier()          memory_barrier()
     40#define write_barrier()         memory_barrier()
    4141
    4242#define srlz_i()                __asm__ volatile (";; srlz.i ;;\n" ::: "memory")
    43 #define srlz_d()                __asm__ volatile (";; srlz.d ;;\n" ::: "memory")
     43#define srlz_d()                __asm__ volatile (";; srlz.d\n" ::: "memory")
    4444
    4545#endif
Note: See TracChangeset for help on using the changeset viewer.