Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(634)

Side by Side Diff: fusl/arch/mips/atomic_arch.h

Issue 1724903002: [fusl] Remove code for unsupported architectures (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « fusl/arch/i386/syscall_arch.h ('k') | fusl/arch/mips/bits/alltypes.h.in » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 #define a_ll a_ll
2 static inline int a_ll(volatile int* p) {
3 int v;
4 __asm__ __volatile__(
5 ".set push ; .set mips2\n\t"
6 "ll %0, %1"
7 "\n\t.set pop"
8 : "=r"(v)
9 : "m"(*p));
10 return v;
11 }
12
13 #define a_sc a_sc
14 static inline int a_sc(volatile int* p, int v) {
15 int r;
16 __asm__ __volatile__(
17 ".set push ; .set mips2\n\t"
18 "sc %0, %1"
19 "\n\t.set pop"
20 : "=r"(r), "=m"(*p)
21 : "0"(v)
22 : "memory");
23 return r;
24 }
25
26 #define a_barrier a_barrier
27 static inline void a_barrier() {
28 /* mips2 sync, but using too many directives causes
29 * gcc not to inline it, so encode with .long instead. */
30 __asm__ __volatile__(".long 0xf" : : : "memory");
31 }
32
33 #define a_pre_llsc a_barrier
34 #define a_post_llsc a_barrier
OLDNEW
« no previous file with comments | « fusl/arch/i386/syscall_arch.h ('k') | fusl/arch/mips/bits/alltypes.h.in » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698