equal
deleted
inserted
replaced
1 # |
1 # |
2 # Copyright (c) 2004, 2007, Oracle and/or its affiliates. All rights reserved. |
2 # Copyright (c) 2004, 2011, Oracle and/or its affiliates. All rights reserved. |
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 # |
4 # |
5 # This code is free software; you can redistribute it and/or modify it |
5 # This code is free software; you can redistribute it and/or modify it |
6 # under the terms of the GNU General Public License version 2 only, as |
6 # under the terms of the GNU General Public License version 2 only, as |
7 # published by the Free Software Foundation. |
7 # published by the Free Software Foundation. |
36 .globl _Copy_arrayof_conjoint_jints |
36 .globl _Copy_arrayof_conjoint_jints |
37 .globl _Copy_conjoint_jlongs_atomic |
37 .globl _Copy_conjoint_jlongs_atomic |
38 .globl _mmx_Copy_arrayof_conjoint_jshorts |
38 .globl _mmx_Copy_arrayof_conjoint_jshorts |
39 |
39 |
40 .globl _Atomic_cmpxchg_long |
40 .globl _Atomic_cmpxchg_long |
|
41 .globl _Atomic_move_long |
41 |
42 |
42 .text |
43 .text |
43 |
44 |
44 .globl SafeFetch32, Fetch32PFI, Fetch32Resume |
45 .globl SafeFetch32, Fetch32PFI, Fetch32Resume |
45 .globl SafeFetchN |
46 .globl SafeFetchN |
651 1: cmpxchg8b (%edi) |
652 1: cmpxchg8b (%edi) |
652 popl %edi |
653 popl %edi |
653 popl %ebx |
654 popl %ebx |
654 ret |
655 ret |
655 |
656 |
|
657 |
|
658 # Support for jlong Atomic::load and Atomic::store. |
|
659 # void _Atomic_move_long(volatile jlong* src, volatile jlong* dst) |
|
660 .p2align 4,,15 |
|
661 .type _Atomic_move_long,@function |
|
662 _Atomic_move_long: |
|
663 movl 4(%esp), %eax # src |
|
664 fildll (%eax) |
|
665 movl 8(%esp), %eax # dest |
|
666 fistpll (%eax) |
|
667 ret |
|
668 |