src/hotspot/share/runtime/atomic.hpp
changeset 53244 9807daeb47c4
parent 51330 edd33b9946ca
child 59247 56bf71d64d51
equal deleted inserted replaced
53243:8bea4144b21c 53244:9807daeb47c4
     1 /*
     1 /*
     2  * Copyright (c) 1999, 2018, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1999, 2019, 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.
    20  * or visit www.oracle.com if you need additional information or have any
    20  * or visit www.oracle.com if you need additional information or have any
    21  * questions.
    21  * questions.
    22  *
    22  *
    23  */
    23  */
    24 
    24 
    25 #ifndef SHARE_VM_RUNTIME_ATOMIC_HPP
    25 #ifndef SHARE_RUNTIME_ATOMIC_HPP
    26 #define SHARE_VM_RUNTIME_ATOMIC_HPP
    26 #define SHARE_RUNTIME_ATOMIC_HPP
    27 
    27 
    28 #include "memory/allocation.hpp"
    28 #include "memory/allocation.hpp"
    29 #include "metaprogramming/conditional.hpp"
    29 #include "metaprogramming/conditional.hpp"
    30 #include "metaprogramming/enableIf.hpp"
    30 #include "metaprogramming/enableIf.hpp"
    31 #include "metaprogramming/isIntegral.hpp"
    31 #include "metaprogramming/isIntegral.hpp"
   871 template<typename T, typename D>
   871 template<typename T, typename D>
   872 inline D Atomic::xchg(T exchange_value, volatile D* dest, atomic_memory_order order) {
   872 inline D Atomic::xchg(T exchange_value, volatile D* dest, atomic_memory_order order) {
   873   return XchgImpl<T, D>()(exchange_value, dest, order);
   873   return XchgImpl<T, D>()(exchange_value, dest, order);
   874 }
   874 }
   875 
   875 
   876 #endif // SHARE_VM_RUNTIME_ATOMIC_HPP
   876 #endif // SHARE_RUNTIME_ATOMIC_HPP