diff -r f323537c9b75 -r 950c35ea6237 src/hotspot/os_cpu/linux_x86/copy_linux_x86.inline.hpp --- a/src/hotspot/os_cpu/linux_x86/copy_linux_x86.inline.hpp Fri Feb 09 13:09:55 2018 +0100 +++ b/src/hotspot/os_cpu/linux_x86/copy_linux_x86.inline.hpp Fri Feb 09 08:23:42 2018 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2003, 2018, 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 @@ -25,7 +25,7 @@ #ifndef OS_CPU_LINUX_X86_VM_COPY_LINUX_X86_INLINE_HPP #define OS_CPU_LINUX_X86_VM_COPY_LINUX_X86_INLINE_HPP -static void pd_conjoint_words(HeapWord* from, HeapWord* to, size_t count) { +static void pd_conjoint_words(const HeapWord* from, HeapWord* to, size_t count) { #ifdef AMD64 (void)memmove(to, from, count * HeapWordSize); #else @@ -70,7 +70,7 @@ #endif // AMD64 } -static void pd_disjoint_words(HeapWord* from, HeapWord* to, size_t count) { +static void pd_disjoint_words(const HeapWord* from, HeapWord* to, size_t count) { #ifdef AMD64 switch (count) { case 8: to[7] = from[7]; @@ -108,7 +108,7 @@ #endif // AMD64 } -static void pd_disjoint_words_atomic(HeapWord* from, HeapWord* to, size_t count) { +static void pd_disjoint_words_atomic(const HeapWord* from, HeapWord* to, size_t count) { #ifdef AMD64 switch (count) { case 8: to[7] = from[7]; @@ -132,15 +132,15 @@ #endif // AMD64 } -static void pd_aligned_conjoint_words(HeapWord* from, HeapWord* to, size_t count) { +static void pd_aligned_conjoint_words(const HeapWord* from, HeapWord* to, size_t count) { pd_conjoint_words(from, to, count); } -static void pd_aligned_disjoint_words(HeapWord* from, HeapWord* to, size_t count) { +static void pd_aligned_disjoint_words(const HeapWord* from, HeapWord* to, size_t count) { pd_disjoint_words(from, to, count); } -static void pd_conjoint_bytes(void* from, void* to, size_t count) { +static void pd_conjoint_bytes(const void* from, void* to, size_t count) { #ifdef AMD64 (void)memmove(to, from, count); #else @@ -219,25 +219,25 @@ #endif // AMD64 } -static void pd_conjoint_bytes_atomic(void* from, void* to, size_t count) { +static void pd_conjoint_bytes_atomic(const void* from, void* to, size_t count) { pd_conjoint_bytes(from, to, count); } -static void pd_conjoint_jshorts_atomic(jshort* from, jshort* to, size_t count) { +static void pd_conjoint_jshorts_atomic(const jshort* from, jshort* to, size_t count) { _Copy_conjoint_jshorts_atomic(from, to, count); } -static void pd_conjoint_jints_atomic(jint* from, jint* to, size_t count) { +static void pd_conjoint_jints_atomic(const jint* from, jint* to, size_t count) { #ifdef AMD64 _Copy_conjoint_jints_atomic(from, to, count); #else assert(HeapWordSize == BytesPerInt, "heapwords and jints must be the same size"); // pd_conjoint_words is word-atomic in this implementation. - pd_conjoint_words((HeapWord*)from, (HeapWord*)to, count); + pd_conjoint_words((const HeapWord*)from, (HeapWord*)to, count); #endif // AMD64 } -static void pd_conjoint_jlongs_atomic(jlong* from, jlong* to, size_t count) { +static void pd_conjoint_jlongs_atomic(const jlong* from, jlong* to, size_t count) { #ifdef AMD64 _Copy_conjoint_jlongs_atomic(from, to, count); #else @@ -262,47 +262,47 @@ #endif // AMD64 } -static void pd_conjoint_oops_atomic(oop* from, oop* to, size_t count) { +static void pd_conjoint_oops_atomic(const oop* from, oop* to, size_t count) { #ifdef AMD64 assert(BytesPerLong == BytesPerOop, "jlongs and oops must be the same size"); - _Copy_conjoint_jlongs_atomic((jlong*)from, (jlong*)to, count); + _Copy_conjoint_jlongs_atomic((const jlong*)from, (jlong*)to, count); #else assert(HeapWordSize == BytesPerOop, "heapwords and oops must be the same size"); // pd_conjoint_words is word-atomic in this implementation. - pd_conjoint_words((HeapWord*)from, (HeapWord*)to, count); + pd_conjoint_words((const HeapWord*)from, (HeapWord*)to, count); #endif // AMD64 } -static void pd_arrayof_conjoint_bytes(HeapWord* from, HeapWord* to, size_t count) { +static void pd_arrayof_conjoint_bytes(const HeapWord* from, HeapWord* to, size_t count) { _Copy_arrayof_conjoint_bytes(from, to, count); } -static void pd_arrayof_conjoint_jshorts(HeapWord* from, HeapWord* to, size_t count) { +static void pd_arrayof_conjoint_jshorts(const HeapWord* from, HeapWord* to, size_t count) { _Copy_arrayof_conjoint_jshorts(from, to, count); } -static void pd_arrayof_conjoint_jints(HeapWord* from, HeapWord* to, size_t count) { +static void pd_arrayof_conjoint_jints(const HeapWord* from, HeapWord* to, size_t count) { #ifdef AMD64 _Copy_arrayof_conjoint_jints(from, to, count); #else - pd_conjoint_jints_atomic((jint*)from, (jint*)to, count); + pd_conjoint_jints_atomic((const jint*)from, (jint*)to, count); #endif // AMD64 } -static void pd_arrayof_conjoint_jlongs(HeapWord* from, HeapWord* to, size_t count) { +static void pd_arrayof_conjoint_jlongs(const HeapWord* from, HeapWord* to, size_t count) { #ifdef AMD64 _Copy_arrayof_conjoint_jlongs(from, to, count); #else - pd_conjoint_jlongs_atomic((jlong*)from, (jlong*)to, count); + pd_conjoint_jlongs_atomic((const jlong*)from, (jlong*)to, count); #endif // AMD64 } -static void pd_arrayof_conjoint_oops(HeapWord* from, HeapWord* to, size_t count) { +static void pd_arrayof_conjoint_oops(const HeapWord* from, HeapWord* to, size_t count) { #ifdef AMD64 assert(BytesPerLong == BytesPerOop, "jlongs and oops must be the same size"); _Copy_arrayof_conjoint_jlongs(from, to, count); #else - pd_conjoint_oops_atomic((oop*)from, (oop*)to, count); + pd_conjoint_oops_atomic((const oop*)from, (oop*)to, count); #endif // AMD64 }