Mercurial > hg > truffle
comparison src/os_cpu/linux_sparc/vm/atomic_linux_sparc.inline.hpp @ 18041:52b4284cb496
Merge with jdk8u20-b26
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Wed, 15 Oct 2014 16:02:50 +0200 |
parents | 7f77d17d0f13 |
children |
comparison
equal
deleted
inserted
replaced
17606:45d7b2c7029d | 18041:52b4284cb496 |
---|---|
76 intptr_t rv; | 76 intptr_t rv; |
77 #ifdef _LP64 | 77 #ifdef _LP64 |
78 __asm__ volatile( | 78 __asm__ volatile( |
79 "1: \n\t" | 79 "1: \n\t" |
80 " ldx [%2], %%o2\n\t" | 80 " ldx [%2], %%o2\n\t" |
81 " add %0, %%o2, %%o3\n\t" | 81 " add %1, %%o2, %%o3\n\t" |
82 " casx [%2], %%o2, %%o3\n\t" | 82 " casx [%2], %%o2, %%o3\n\t" |
83 " cmp %%o2, %%o3\n\t" | 83 " cmp %%o2, %%o3\n\t" |
84 " bne %%xcc, 1b\n\t" | 84 " bne %%xcc, 1b\n\t" |
85 " nop\n\t" | 85 " nop\n\t" |
86 " add %0, %%o2, %0\n\t" | 86 " add %1, %%o2, %0\n\t" |
87 : "=r" (rv) | 87 : "=r" (rv) |
88 : "r" (add_value), "r" (dest) | 88 : "r" (add_value), "r" (dest) |
89 : "memory", "o2", "o3"); | 89 : "memory", "o2", "o3"); |
90 #else | 90 #else |
91 __asm__ volatile( | 91 __asm__ volatile( |