ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libecb/ecb.h
(Generate patch)

Comparing libecb/ecb.h (file contents):
Revision 1.128 by root, Thu Jan 9 05:16:12 2014 UTC vs.
Revision 1.129 by root, Thu Mar 20 22:04:29 2014 UTC

1/* 1/*
2 * libecb - http://software.schmorp.de/pkg/libecb 2 * libecb - http://software.schmorp.de/pkg/libecb
3 * 3 *
4 * Copyright (©) 2009-2013 Marc Alexander Lehmann <libecb@schmorp.de> 4 * Copyright (©) 2009-2014 Marc Alexander Lehmann <libecb@schmorp.de>
5 * Copyright (©) 2011 Emanuele Giaquinta 5 * Copyright (©) 2011 Emanuele Giaquinta
6 * All rights reserved. 6 * All rights reserved.
7 * 7 *
8 * Redistribution and use in source and binary forms, with or without modifica- 8 * Redistribution and use in source and binary forms, with or without modifica-
9 * tion, are permitted provided that the following conditions are met: 9 * tion, are permitted provided that the following conditions are met:
142 || defined __ARM_ARCH_6K__ || defined __ARM_ARCH_6ZK__ 142 || defined __ARM_ARCH_6K__ || defined __ARM_ARCH_6ZK__
143 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("mcr p15,0,%0,c7,c10,5" : : "r" (0) : "memory") 143 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("mcr p15,0,%0,c7,c10,5" : : "r" (0) : "memory")
144 #elif defined __ARM_ARCH_7__ || defined __ARM_ARCH_7A__ \ 144 #elif defined __ARM_ARCH_7__ || defined __ARM_ARCH_7A__ \
145 || defined __ARM_ARCH_7M__ || defined __ARM_ARCH_7R__ 145 || defined __ARM_ARCH_7M__ || defined __ARM_ARCH_7R__
146 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb" : : : "memory") 146 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb" : : : "memory")
147 #elif __aarch64__
148 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb ish" : : : "memory")
147 #elif (__sparc || __sparc__) && !__sparcv8 149 #elif (__sparc || __sparc__) && !__sparcv8
148 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad | #StoreStore | #StoreLoad" : : : "memory") 150 #define ECB_MEMORY_FENCE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad | #StoreStore | #StoreLoad" : : : "memory")
149 #define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad" : : : "memory") 151 #define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad" : : : "memory")
150 #define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("membar #LoadStore | #StoreStore") 152 #define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("membar #LoadStore | #StoreStore")
151 #elif defined __s390__ || defined __s390x__ 153 #elif defined __s390__ || defined __s390x__

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines