Differences From Artifact [7c455e67f3]:
- File src/atomic_x86.h — part of check-in [6f9c0e8eb2] at 2017-04-14 05:13:09 on branch trunk — atomic_*.h: Add missing _Nullable (user: js, size: 8965) [annotate] [blame] [check-ins using]
To Artifact [1b998b9efc]:
- File
src/atomic_x86.h
— part of check-in
[4af49a13c3]
at
2017-05-07 20:10:13
on branch trunk
— Small code style change
Casts are now written like types in variable declarations. (user: js, size: 8969) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
65 66 67 68 69 70 71 | "lock\n\t" "xaddq %0, %2\n\t" "addq %1, %0" : "+&r"(i) : "r"(i), "m"(*p) ); | | | | 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | "lock\n\t" "xaddq %0, %2\n\t" "addq %1, %0" : "+&r"(i) : "r"(i), "m"(*p) ); return (void *)i; #elif defined(OF_X86_ASM) __asm__ __volatile__ ( "lock\n\t" "xaddl %0, %2\n\t" "addl %1, %0" : "+&r"(i) : "r"(i), "m"(*p) ); return (void *)i; #endif } static OF_INLINE int of_atomic_int_sub(volatile int *_Nonnull p, int i) { if (sizeof(int) == 4) |
︙ | ︙ | |||
136 137 138 139 140 141 142 | "lock\n\t" "xaddq %0, %2\n\t" "subq %1, %0" : "+&r"(i) : "r"(i), "m"(*p) ); | | | | 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | "lock\n\t" "xaddq %0, %2\n\t" "subq %1, %0" : "+&r"(i) : "r"(i), "m"(*p) ); return (void *)i; #elif defined(OF_X86_ASM) __asm__ __volatile__ ( "negl %0\n\t" "lock\n\t" "xaddl %0, %2\n\t" "subl %1, %0" : "+&r"(i) : "r"(i), "m"(*p) ); return (void *)i; #endif } static OF_INLINE int of_atomic_int_inc(volatile int *_Nonnull p) { int i; |
︙ | ︙ |