src/share/vm/runtime/atomic.cpp
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2001, 2008, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 20,31 ****
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
! # include "incls/_precompiled.incl"
! # include "incls/_atomic.cpp.incl"
jbyte Atomic::cmpxchg(jbyte exchange_value, volatile jbyte* dest, jbyte compare_value) {
assert(sizeof(jbyte) == 1, "assumption.");
uintptr_t dest_addr = (uintptr_t)dest;
uintptr_t offset = dest_addr % sizeof(jint);
--- 20,58 ----
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
! #include "precompiled.hpp"
! #include "runtime/atomic.hpp"
! #ifdef TARGET_OS_FAMILY_linux
! # include "os_linux.inline.hpp"
! #endif
! #ifdef TARGET_OS_FAMILY_solaris
! # include "os_solaris.inline.hpp"
! #endif
! #ifdef TARGET_OS_FAMILY_windows
! # include "os_windows.inline.hpp"
! #endif
! #ifdef TARGET_OS_ARCH_linux_x86
! # include "atomic_linux_x86.inline.hpp"
! #endif
! #ifdef TARGET_OS_ARCH_linux_sparc
! # include "atomic_linux_sparc.inline.hpp"
! #endif
! #ifdef TARGET_OS_ARCH_linux_zero
! # include "atomic_linux_zero.inline.hpp"
! #endif
! #ifdef TARGET_OS_ARCH_solaris_x86
! # include "atomic_solaris_x86.inline.hpp"
! #endif
! #ifdef TARGET_OS_ARCH_solaris_sparc
! # include "atomic_solaris_sparc.inline.hpp"
! #endif
! #ifdef TARGET_OS_ARCH_windows_x86
! # include "atomic_windows_x86.inline.hpp"
! #endif
jbyte Atomic::cmpxchg(jbyte exchange_value, volatile jbyte* dest, jbyte compare_value) {
assert(sizeof(jbyte) == 1, "assumption.");
uintptr_t dest_addr = (uintptr_t)dest;
uintptr_t offset = dest_addr % sizeof(jint);