8194814: [ppc, s390] A row of minor fixes and cleanups
Summary: Fix the data types of pd flags.
Reviewed-by: mdoerr
--- a/src/hotspot/cpu/ppc/c1_MacroAssembler_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/c1_MacroAssembler_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 1999, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -34,8 +34,8 @@
#include "runtime/basicLock.hpp"
#include "runtime/biasedLocking.hpp"
#include "runtime/os.hpp"
+#include "runtime/sharedRuntime.hpp"
#include "runtime/stubRoutines.hpp"
-#include "runtime/sharedRuntime.hpp"
#include "utilities/align.hpp"
--- a/src/hotspot/cpu/ppc/c1_globals_ppc.hpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/c1_globals_ppc.hpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -33,36 +33,36 @@
// (see c1_globals.hpp)
#ifndef TIERED
-define_pd_global(bool, BackgroundCompilation, true );
-define_pd_global(bool, CICompileOSR, true );
-define_pd_global(bool, InlineIntrinsics, true );
-define_pd_global(bool, PreferInterpreterNativeStubs, false);
-define_pd_global(bool, ProfileTraps, false);
-define_pd_global(bool, UseOnStackReplacement, true );
-define_pd_global(bool, TieredCompilation, false);
-define_pd_global(intx, CompileThreshold, 1000 );
+define_pd_global(bool, BackgroundCompilation, true);
+define_pd_global(bool, CICompileOSR, true);
+define_pd_global(bool, InlineIntrinsics, true);
+define_pd_global(bool, PreferInterpreterNativeStubs, false);
+define_pd_global(bool, ProfileTraps, false);
+define_pd_global(bool, UseOnStackReplacement, true);
+define_pd_global(bool, TieredCompilation, false);
+define_pd_global(intx, CompileThreshold, 1000);
-define_pd_global(intx, OnStackReplacePercentage, 1400 );
-define_pd_global(bool, UseTLAB, true );
-define_pd_global(bool, ProfileInterpreter, false);
-define_pd_global(intx, FreqInlineSize, 325 );
-define_pd_global(bool, ResizeTLAB, true );
-define_pd_global(intx, ReservedCodeCacheSize, 32*M );
-define_pd_global(intx, CodeCacheExpansionSize, 32*K );
-define_pd_global(uintx,CodeCacheMinBlockLength, 1);
-define_pd_global(uintx,MetaspaceSize, 12*M );
-define_pd_global(bool, NeverActAsServerClassMachine, true );
-define_pd_global(intx, NewSizeThreadIncrease, 16*K );
-define_pd_global(uint64_t,MaxRAM, 1ULL*G);
-define_pd_global(intx, InitialCodeCacheSize, 160*K);
+define_pd_global(intx, OnStackReplacePercentage, 1400);
+define_pd_global(bool, UseTLAB, true);
+define_pd_global(bool, ProfileInterpreter, false);
+define_pd_global(intx, FreqInlineSize, 325 );
+define_pd_global(bool, ResizeTLAB, true);
+define_pd_global(uintx, ReservedCodeCacheSize, 32*M);
+define_pd_global(uintx, CodeCacheExpansionSize, 32*K);
+define_pd_global(uintx, CodeCacheMinBlockLength, 1);
+define_pd_global(size_t, MetaspaceSize, 12*M);
+define_pd_global(bool, NeverActAsServerClassMachine, true);
+define_pd_global(size_t, NewSizeThreadIncrease, 16*K);
+define_pd_global(uint64_t, MaxRAM, 1ULL*G);
+define_pd_global(uintx, InitialCodeCacheSize, 160*K);
#endif // !TIERED
-define_pd_global(bool, UseTypeProfile, false);
-define_pd_global(bool, RoundFPResults, false);
+define_pd_global(bool, UseTypeProfile, false);
+define_pd_global(bool, RoundFPResults, false);
-define_pd_global(bool, LIRFillDelaySlots, false);
-define_pd_global(bool, OptimizeSinglePrecision, false);
-define_pd_global(bool, CSEArrayLength, true );
-define_pd_global(bool, TwoOperandLIRForm, false);
+define_pd_global(bool, LIRFillDelaySlots, false);
+define_pd_global(bool, OptimizeSinglePrecision, false);
+define_pd_global(bool, CSEArrayLength, true);
+define_pd_global(bool, TwoOperandLIRForm, false);
#endif // CPU_PPC_VM_C1_GLOBALS_PPC_HPP
--- a/src/hotspot/cpu/ppc/c2_globals_ppc.hpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/c2_globals_ppc.hpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2016 SAP SE. All rights reserved.
+ * Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -39,7 +39,7 @@
define_pd_global(bool, ProfileTraps, true);
define_pd_global(bool, UseOnStackReplacement, true);
define_pd_global(bool, ProfileInterpreter, true);
-define_pd_global(bool, TieredCompilation, true);
+define_pd_global(bool, TieredCompilation, trueInTiered);
define_pd_global(intx, CompileThreshold, 10000);
define_pd_global(intx, OnStackReplacePercentage, 140);
@@ -78,27 +78,27 @@
// x.f = 0
// loc = x.f
// NullCheck loc
-define_pd_global(bool, OptoScheduling, false);
-define_pd_global(bool, IdealizeClearArrayNode, true);
+define_pd_global(bool, OptoScheduling, false);
+define_pd_global(bool, IdealizeClearArrayNode, true);
-define_pd_global(intx, InitialCodeCacheSize, 2048*K); // Integral multiple of CodeCacheExpansionSize
-define_pd_global(intx, ReservedCodeCacheSize, 256*M);
-define_pd_global(intx, NonProfiledCodeHeapSize, 125*M);
-define_pd_global(intx, ProfiledCodeHeapSize, 126*M);
-define_pd_global(intx, NonNMethodCodeHeapSize, 5*M );
-define_pd_global(intx, CodeCacheExpansionSize, 64*K);
+define_pd_global(uintx, InitialCodeCacheSize, 2048*K); // Integral multiple of CodeCacheExpansionSize
+define_pd_global(uintx, ReservedCodeCacheSize, 256*M);
+define_pd_global(uintx, NonProfiledCodeHeapSize, 125*M);
+define_pd_global(uintx, ProfiledCodeHeapSize, 126*M);
+define_pd_global(uintx, NonNMethodCodeHeapSize, 5*M );
+define_pd_global(uintx, CodeCacheExpansionSize, 64*K);
// Ergonomics related flags
-define_pd_global(uint64_t, MaxRAM, 4ULL*G);
-define_pd_global(uintx, CodeCacheMinBlockLength, 4);
-define_pd_global(uintx, CodeCacheMinimumUseSpace, 400*K);
+define_pd_global(uint64_t, MaxRAM, 128ULL*G);
+define_pd_global(uintx, CodeCacheMinBlockLength, 4);
+define_pd_global(uintx, CodeCacheMinimumUseSpace, 400*K);
-define_pd_global(bool, TrapBasedRangeChecks, true);
+define_pd_global(bool, TrapBasedRangeChecks, true);
// Heap related flags
-define_pd_global(size_t, MetaspaceSize, ScaleForWordSize(16*M));
+define_pd_global(size_t, MetaspaceSize, ScaleForWordSize(16*M));
// Ergonomics related flags
-define_pd_global(bool, NeverActAsServerClassMachine, false);
+define_pd_global(bool, NeverActAsServerClassMachine, false);
#endif // CPU_PPC_VM_C2_GLOBALS_PPC_HPP
--- a/src/hotspot/cpu/ppc/c2_init_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/c2_init_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -29,11 +29,11 @@
#include "runtime/globals.hpp"
#include "utilities/debug.hpp"
-// processor dependent initialization for ppc
+// Processor dependent initialization of C2 compiler for ppc.
void Compile::pd_compiler2_init() {
- // Power7 and later
+ // Power7 and later.
if (PowerArchitecturePPC64 > 6) {
if (FLAG_IS_DEFAULT(UsePopCountInstruction)) {
FLAG_SET_ERGO(bool, UsePopCountInstruction, true);
--- a/src/hotspot/cpu/ppc/globals_ppc.hpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/globals_ppc.hpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2002, 2017, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2017 SAP SE. All rights reserved.
+ * Copyright (c) 2002, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -86,14 +86,14 @@
define_pd_global(bool, ThreadLocalHandshakes, true);
// Platform dependent flag handling: flags only defined on this platform.
-#define ARCH_FLAGS(develop, \
- product, \
- diagnostic, \
+#define ARCH_FLAGS(develop, \
+ product, \
+ diagnostic, \
experimental, \
- notproduct, \
- range, \
- constraint, \
- writeable) \
+ notproduct, \
+ range, \
+ constraint, \
+ writeable) \
\
product(uintx, PowerArchitecturePPC64, 0, \
"CPU Version: x for PowerX. Currently recognizes Power5 to " \
--- a/src/hotspot/cpu/ppc/icache_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/icache_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2013 SAP SE. All rights reserved.
+ * Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -24,7 +24,6 @@
*/
#include "precompiled.hpp"
-#include "assembler_ppc.inline.hpp"
#include "runtime/icache.hpp"
// Use inline assembler to implement icache flush.
@@ -32,7 +31,7 @@
address end = start + (unsigned int)lines*ICache::line_size;
assert(start <= end, "flush_icache parms");
- // store modified cache lines from data cache
+ // Store modified cache lines from data cache.
for (address a = start; a < end; a += ICache::line_size) {
__asm__ __volatile__(
"dcbst 0, %0 \n"
@@ -48,7 +47,7 @@
:
: "memory");
- // invalidate respective cache lines in instruction cache
+ // Invalidate respective cache lines in instruction cache.
for (address a = start; a < end; a += ICache::line_size) {
__asm__ __volatile__(
"icbi 0, %0 \n"
@@ -57,7 +56,7 @@
: "memory");
}
- // discard fetched instructions
+ // Discard fetched instructions.
__asm__ __volatile__(
"isync \n"
:
@@ -71,6 +70,8 @@
*flush_icache_stub = (ICache::flush_icache_stub_t)ICache::ppc64_flush_icache;
- // First call to flush itself
+ // First call to flush itself.
+ // Pointless since we call C, but it is expected to get
+ // executed during VM_Version::determine_features().
ICache::invalidate_range((address)(*flush_icache_stub), 0);
}
--- a/src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2017 SAP SE. All rights reserved.
+ * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -32,6 +32,10 @@
#include "runtime/safepointMechanism.hpp"
#include "runtime/sharedRuntime.hpp"
+// Implementation of InterpreterMacroAssembler.
+
+// This file specializes the assembler with interpreter-specific macros.
+
#ifdef PRODUCT
#define BLOCK_COMMENT(str) // nothing
#else
--- a/src/hotspot/cpu/ppc/jniFastGetField_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/jniFastGetField_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2013 SAP SE. All rights reserved.
+ * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -24,7 +24,7 @@
*/
#include "precompiled.hpp"
-#include "assembler_ppc.inline.hpp"
+#include "asm/assembler.inline.hpp"
#include "memory/resourceArea.hpp"
#include "prims/jniFastGetField.hpp"
#include "prims/jvm_misc.hpp"
--- a/src/hotspot/cpu/ppc/macroAssembler_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/macroAssembler_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -2880,10 +2880,6 @@
//assert(ObjectMonitor::recursions_size_in_bytes() == 8, "unexpected size");
asm_assert_mem8_is_zero(ObjectMonitor::recursions_offset_in_bytes(), temp,
"monitor->_recursions should be 0", -1);
- // Invariant 2: OwnerIsThread shouldn't be 0.
- //assert(ObjectMonitor::OwnerIsThread_size_in_bytes() == 4, "unexpected size");
- //asm_assert_mem4_isnot_zero(ObjectMonitor::OwnerIsThread_offset_in_bytes(), temp,
- // "monitor->OwnerIsThread shouldn't be 0", -1);
# endif
#if INCLUDE_RTM_OPT
--- a/src/hotspot/cpu/ppc/nativeInst_ppc.hpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/nativeInst_ppc.hpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 2002, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -26,7 +26,6 @@
#ifndef CPU_PPC_VM_NATIVEINST_PPC_HPP
#define CPU_PPC_VM_NATIVEINST_PPC_HPP
-#include "asm/assembler.hpp"
#include "asm/macroAssembler.hpp"
#include "memory/allocation.hpp"
#include "runtime/icache.hpp"
--- a/src/hotspot/cpu/ppc/runtime_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/runtime_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2015 SAP SE. All rights reserved.
+ * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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,6 @@
#include "precompiled.hpp"
#ifdef COMPILER2
-#include "asm/assembler.inline.hpp"
#include "asm/macroAssembler.inline.hpp"
#include "classfile/systemDictionary.hpp"
#include "code/vmreg.hpp"
--- a/src/hotspot/cpu/ppc/sharedRuntime_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/sharedRuntime_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2012, 2017 SAP SE. All rights reserved.
+ * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018 SAP SE. 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
@@ -1912,8 +1912,8 @@
// - *_slot_offset Indicates offset from SP in number of stack slots.
// - *_offset Indicates offset from SP in bytes.
- int stack_slots = c_calling_convention(out_sig_bt, out_regs, out_regs2, total_c_args) // 1+2)
- + SharedRuntime::out_preserve_stack_slots(); // See c_calling_convention.
+ int stack_slots = c_calling_convention(out_sig_bt, out_regs, out_regs2, total_c_args) + // 1+2)
+ SharedRuntime::out_preserve_stack_slots(); // See c_calling_convention.
// Now the space for the inbound oop handle area.
int total_save_slots = num_java_iarg_registers * VMRegImpl::slots_per_word;
@@ -2044,7 +2044,8 @@
OopMap *oop_map = new OopMap(stack_slots * 2, 0 /* arg_slots*/);
if (is_critical_native) {
- check_needs_gc_for_critical_native(masm, stack_slots, total_in_args, oop_handle_slot_offset, oop_maps, in_regs, in_sig_bt, r_temp_1);
+ check_needs_gc_for_critical_native(masm, stack_slots, total_in_args, oop_handle_slot_offset,
+ oop_maps, in_regs, in_sig_bt, r_temp_1);
}
// Move arguments from register/stack to register/stack.
--- a/src/hotspot/cpu/ppc/stubGenerator_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/stubGenerator_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -40,6 +40,10 @@
#include "runtime/thread.inline.hpp"
#include "utilities/align.hpp"
+// Declaration and definition of StubGenerator (no .hpp file).
+// For a more detailed description of the stub routine structure
+// see the comment in stubRoutines.hpp.
+
#define __ _masm->
#ifdef PRODUCT
--- a/src/hotspot/cpu/ppc/stubRoutines_ppc_64.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/stubRoutines_ppc_64.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2017, SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -23,6 +23,7 @@
*
*/
+#include "precompiled.hpp"
#include "asm/macroAssembler.inline.hpp"
#include "runtime/stubRoutines.hpp"
--- a/src/hotspot/cpu/ppc/templateInterpreterGenerator_ppc.cpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/ppc/templateInterpreterGenerator_ppc.cpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2015, 2017, SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -582,25 +582,6 @@
return entry;
}
-#if 0
-// Call special ClassCastException constructor taking object to cast
-// and target class as arguments.
-address TemplateInterpreterGenerator::generate_ClassCastException_verbose_handler() {
- address entry = __ pc();
-
- // Expression stack must be empty before entering the VM if an
- // exception happened.
- __ empty_expression_stack();
-
- // Thread will be loaded to R3_ARG1.
- // Target class oop is in register R5_ARG3 by convention!
- __ call_VM(noreg, CAST_FROM_FN_PTR(address, InterpreterRuntime::throw_ClassCastException_verbose), R17_tos, R5_ARG3);
- // Above call must not return here since exception pending.
- DEBUG_ONLY(__ should_not_reach_here();)
- return entry;
-}
-#endif
-
address TemplateInterpreterGenerator::generate_ClassCastException_handler() {
address entry = __ pc();
// Expression stack must be empty before entering the VM if an
@@ -1896,7 +1877,6 @@
return NULL;
}
-
/**
* Method entry for static native methods:
* int java.util.zip.CRC32.updateBytes( int crc, byte[] b, int off, int len)
--- a/src/hotspot/cpu/s390/bytes_s390.hpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/s390/bytes_s390.hpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2016 SAP SE. All rights reserved.
+ * Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2018 SAP SE. 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
@@ -42,11 +42,6 @@
//
// In short, it makes no sense on z/Architecture to piecemeal get or put unaligned data.
- // Only swap on little endian machines => suffix `_le'.
- static inline u2 swap_u2_le(u2 x) { return x; }
- static inline u4 swap_u4_le(u4 x) { return x; }
- static inline u8 swap_u8_le(u8 x) { return x; }
-
static inline u2 get_native_u2(address p) { return *(u2*)p; }
static inline u4 get_native_u4(address p) { return *(u4*)p; }
static inline u8 get_native_u8(address p) { return *(u8*)p; }
@@ -55,7 +50,8 @@
static inline void put_native_u4(address p, u4 x) { *(u4*)p = x; }
static inline void put_native_u8(address p, u8 x) { *(u8*)p = x; }
-#include "bytes_linux_s390.inline.hpp"
+ // The following header contains the implementations of swap_u2, swap_u4, and swap_u8.
+#include OS_CPU_HEADER_INLINE(bytes)
// Efficient reading and writing of unaligned unsigned data in Java byte ordering (i.e. big-endian ordering)
static inline u2 get_Java_u2(address p) { return get_native_u2(p); }
--- a/src/hotspot/cpu/s390/c1_globals_s390.hpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/s390/c1_globals_s390.hpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2016 SAP SE. All rights reserved.
+ * Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2018 SAP SE. 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
@@ -48,7 +48,7 @@
define_pd_global(bool, ProfileInterpreter, false);
define_pd_global(intx, FreqInlineSize, 325);
define_pd_global(bool, ResizeTLAB, true);
-define_pd_global(intx, ReservedCodeCacheSize, 32*M);
+define_pd_global(uintx, ReservedCodeCacheSize, 32*M);
define_pd_global(uintx, NonProfiledCodeHeapSize, 13*M);
define_pd_global(uintx, ProfiledCodeHeapSize, 14*M);
define_pd_global(uintx, NonNMethodCodeHeapSize, 5*M);
--- a/src/hotspot/cpu/s390/c2_globals_s390.hpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/s390/c2_globals_s390.hpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
- * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2016 SAP SE. All rights reserved.
+ * Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2018 SAP SE. 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
@@ -58,7 +58,7 @@
define_pd_global(intx, LoopPercentProfileLimit, 10);
define_pd_global(intx, MinJumpTableSize, 18);
-// Peephole and CISC spilling both break the graph, and so makes the
+// Peephole and CISC spilling both break the graph, and so make the
// scheduler sick.
define_pd_global(bool, OptoPeephole, false);
define_pd_global(bool, UseCISCSpill, true);
--- a/src/hotspot/cpu/s390/globals_s390.hpp Tue Dec 19 20:14:52 2017 -0800
+++ b/src/hotspot/cpu/s390/globals_s390.hpp Tue Jan 09 08:38:22 2018 +0100
@@ -1,6 +1,6 @@
/*
* Copyright (c) 2016, 2017 Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2016, 2017 SAP SE. All rights reserved.
+ * Copyright (c) 2016, 2018 SAP SE. 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
@@ -87,7 +87,14 @@
define_pd_global(bool, ThreadLocalHandshakes, true);
-#define ARCH_FLAGS(develop, product, diagnostic, experimental, notproduct, range, constraint, writeable) \
+#define ARCH_FLAGS(develop, \
+ product, \
+ diagnostic, \
+ experimental, \
+ notproduct, \
+ range, \
+ constraint, \
+ writeable) \
\
/* Reoptimize code-sequences of calls at runtime, e.g. replace an */ \
/* indirect call by a direct call. */ \