< prev index next >

src/os_cpu/solaris_x86/vm/solaris_x86_32.s

Print this page

        

@@ -641,12 +641,11 @@
         ret
 
 
         / Support for jlong Atomic::cmpxchg(jlong exchange_value,
         /                                   volatile jlong* dest,
-        /                                   jlong compare_value,
-        /                                   bool is_MP)
+        /                                   jlong compare_value)
         / Used only for Solaris/gcc builds
         .align 16
 _Atomic_cmpxchg_long_gcc:
                                    /  8(%esp) : return PC
         pushl    %ebx              /  4(%esp) : old %ebx

@@ -654,12 +653,9 @@
         movl     12(%esp), %ebx    / 12(%esp) : exchange_value (low)
         movl     16(%esp), %ecx    / 16(%esp) : exchange_value (high)
         movl     24(%esp), %eax    / 24(%esp) : compare_value (low)
         movl     28(%esp), %edx    / 28(%esp) : compare_value (high)
         movl     20(%esp), %edi    / 20(%esp) : dest
-        cmpl     $0, 32(%esp)      / 32(%esp) : is_MP
-        je       1f
-        lock
-1:      cmpxchg8b (%edi)
+        lock cmpxchg8b (%edi)
         popl     %edi
         popl     %ebx
         ret
< prev index next >