mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 14:54:52 +02:00
8173070: Remove ValueObj class for allocation subclassing for runtime code
Reviewed-by: stefank, tschatzl, stuefe
This commit is contained in:
parent
fb1ec3eb27
commit
7557d78b35
98 changed files with 225 additions and 271 deletions
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, 2015, Red Hat Inc. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -37,7 +37,7 @@
|
|||
// secondary complication -- not all code employing C call convention
|
||||
// executes as x86 code though -- we generate some of it
|
||||
|
||||
class Argument VALUE_OBJ_CLASS_SPEC {
|
||||
class Argument {
|
||||
public:
|
||||
enum {
|
||||
n_int_register_parameters_c = 8, // r0, r1, ... r7 (c_rarg0, c_rarg1, ...)
|
||||
|
@ -338,7 +338,7 @@ static inline unsigned long uabs(long n) { return uabs((unsigned long)n); }
|
|||
static inline unsigned long uabs(int n) { return uabs((unsigned int)n); }
|
||||
|
||||
// Addressing modes
|
||||
class Address VALUE_OBJ_CLASS_SPEC {
|
||||
class Address {
|
||||
public:
|
||||
|
||||
enum mode { no_mode, base_plus_offset, pre, post, pcrel,
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -49,7 +49,7 @@
|
|||
// The base class for different kinds of native instruction abstractions.
|
||||
// Provides the primitive operations to manipulate code relative to this.
|
||||
|
||||
class NativeInstruction VALUE_OBJ_CLASS_SPEC {
|
||||
class NativeInstruction {
|
||||
friend class Relocation;
|
||||
friend bool is_NativeCallTrampolineStub_at(address);
|
||||
public:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 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
|
||||
|
@ -76,7 +76,7 @@ enum AsmOffsetOp {
|
|||
|
||||
|
||||
// ARM Addressing Modes 2 and 3 - Load and store
|
||||
class Address VALUE_OBJ_CLASS_SPEC {
|
||||
class Address {
|
||||
private:
|
||||
Register _base;
|
||||
Register _index;
|
||||
|
@ -334,7 +334,7 @@ class Address VALUE_OBJ_CLASS_SPEC {
|
|||
};
|
||||
|
||||
#ifdef COMPILER2
|
||||
class VFP VALUE_OBJ_CLASS_SPEC {
|
||||
class VFP {
|
||||
// Helper classes to detect whether a floating point constant can be
|
||||
// encoded in a fconstd or fconsts instruction
|
||||
// The conversion from the imm8, 8 bit constant, to the floating
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 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
|
||||
|
@ -26,7 +26,7 @@
|
|||
#define CPU_ARM_VM_ASSEMBLER_ARM_32_HPP
|
||||
|
||||
// ARM Addressing Mode 1 - Data processing operands
|
||||
class AsmOperand VALUE_OBJ_CLASS_SPEC {
|
||||
class AsmOperand {
|
||||
private:
|
||||
int _encoding;
|
||||
|
||||
|
@ -99,7 +99,7 @@ class AsmOperand VALUE_OBJ_CLASS_SPEC {
|
|||
|
||||
|
||||
// ARM Addressing Mode 4 - Load and store multiple
|
||||
class RegisterSet VALUE_OBJ_CLASS_SPEC {
|
||||
class RegisterSet {
|
||||
private:
|
||||
int _encoding;
|
||||
|
||||
|
@ -155,7 +155,7 @@ class RegisterSet VALUE_OBJ_CLASS_SPEC {
|
|||
#endif
|
||||
|
||||
// ARM Addressing Mode 5 - Load and store multiple VFP registers
|
||||
class FloatRegisterSet VALUE_OBJ_CLASS_SPEC {
|
||||
class FloatRegisterSet {
|
||||
private:
|
||||
int _encoding;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 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
|
||||
|
@ -53,7 +53,7 @@ enum AsmPrefetchOp {
|
|||
};
|
||||
|
||||
// Shifted register operand for data processing instructions.
|
||||
class AsmOperand VALUE_OBJ_CLASS_SPEC {
|
||||
class AsmOperand {
|
||||
private:
|
||||
Register _reg;
|
||||
AsmShift _shift;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2008, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 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
|
||||
|
@ -32,7 +32,7 @@ class BiasedLockingCounters;
|
|||
|
||||
// Introduced AddressLiteral and its subclasses to ease portability from
|
||||
// x86 and avoid relocation issues
|
||||
class AddressLiteral VALUE_OBJ_CLASS_SPEC {
|
||||
class AddressLiteral {
|
||||
RelocationHolder _rspec;
|
||||
// Typically we use AddressLiterals we want to use their rval
|
||||
// However in some situations we want the lval (effect address) of the item.
|
||||
|
@ -1394,7 +1394,7 @@ public:
|
|||
// The purpose of this class is to build several code fragments of the same size
|
||||
// in order to allow fast table branch.
|
||||
|
||||
class FixedSizeCodeBlock VALUE_OBJ_CLASS_SPEC {
|
||||
class FixedSizeCodeBlock {
|
||||
public:
|
||||
FixedSizeCodeBlock(MacroAssembler* masm, int size_in_instrs, bool enabled);
|
||||
~FixedSizeCodeBlock();
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 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
|
||||
|
@ -47,7 +47,7 @@
|
|||
// back-end extensions or the actual instructions size.
|
||||
class NativeInstruction;
|
||||
|
||||
class RawNativeInstruction VALUE_OBJ_CLASS_SPEC {
|
||||
class RawNativeInstruction {
|
||||
public:
|
||||
|
||||
enum ARM_specific {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 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
|
||||
|
@ -45,7 +45,7 @@
|
|||
// back-end extensions or the actual instructions size.
|
||||
class NativeInstruction;
|
||||
|
||||
class RawNativeInstruction VALUE_OBJ_CLASS_SPEC {
|
||||
class RawNativeInstruction {
|
||||
public:
|
||||
|
||||
enum ARM_specific {
|
||||
|
|
|
@ -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.
|
||||
*
|
||||
|
@ -31,7 +31,7 @@
|
|||
// Address is an abstraction used to represent a memory location
|
||||
// as used in assembler instructions.
|
||||
// PPC instructions grok either baseReg + indexReg or baseReg + disp.
|
||||
class Address VALUE_OBJ_CLASS_SPEC {
|
||||
class Address {
|
||||
private:
|
||||
Register _base; // Base register.
|
||||
Register _index; // Index register.
|
||||
|
@ -64,7 +64,7 @@ class Address VALUE_OBJ_CLASS_SPEC {
|
|||
bool is_const() const { return _base == noreg && _index == noreg; }
|
||||
};
|
||||
|
||||
class AddressLiteral VALUE_OBJ_CLASS_SPEC {
|
||||
class AddressLiteral {
|
||||
private:
|
||||
address _address;
|
||||
RelocationHolder _rspec;
|
||||
|
@ -117,7 +117,7 @@ class AddressLiteral VALUE_OBJ_CLASS_SPEC {
|
|||
// with the PPC Application Binary Interface, or ABI. This is
|
||||
// often referred to as the native or C calling convention.
|
||||
|
||||
class Argument VALUE_OBJ_CLASS_SPEC {
|
||||
class Argument {
|
||||
private:
|
||||
int _number; // The number of the argument.
|
||||
public:
|
||||
|
@ -153,7 +153,7 @@ class Argument VALUE_OBJ_CLASS_SPEC {
|
|||
|
||||
#if !defined(ABI_ELFv2)
|
||||
// A ppc64 function descriptor.
|
||||
struct FunctionDescriptor VALUE_OBJ_CLASS_SPEC {
|
||||
struct FunctionDescriptor {
|
||||
private:
|
||||
address _entry;
|
||||
address _toc;
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
|
||||
// The base class for different kinds of native instruction abstractions.
|
||||
// It provides the primitive operations to manipulate code relative to this.
|
||||
class NativeInstruction VALUE_OBJ_CLASS_SPEC {
|
||||
class NativeInstruction {
|
||||
friend class Relocation;
|
||||
|
||||
public:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2016, 2017 SAP SE. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -31,7 +31,7 @@
|
|||
// Immediate is an abstraction to represent the various immediate
|
||||
// operands which exist on z/Architecture. Neither this class nor
|
||||
// instances hereof have an own state. It consists of methods only.
|
||||
class Immediate VALUE_OBJ_CLASS_SPEC {
|
||||
class Immediate {
|
||||
|
||||
public:
|
||||
static bool is_simm(int64_t x, unsigned int nbits) {
|
||||
|
@ -82,7 +82,7 @@ class Immediate VALUE_OBJ_CLASS_SPEC {
|
|||
// displacements which exist with addresses on z/ArchiTecture.
|
||||
// Neither this class nor instances hereof have an own state. It
|
||||
// consists of methods only.
|
||||
class Displacement VALUE_OBJ_CLASS_SPEC {
|
||||
class Displacement {
|
||||
|
||||
public: // These tests are used outside the (Macro)Assembler world, e.g. in ad-file.
|
||||
|
||||
|
@ -101,7 +101,7 @@ class Displacement VALUE_OBJ_CLASS_SPEC {
|
|||
// form they are used on z/Architecture for instructions which access
|
||||
// their operand with pc-relative addresses. Neither this class nor
|
||||
// instances hereof have an own state. It consists of methods only.
|
||||
class RelAddr VALUE_OBJ_CLASS_SPEC {
|
||||
class RelAddr {
|
||||
|
||||
private: // No public use at all. Solely for (Macro)Assembler.
|
||||
|
||||
|
@ -177,7 +177,7 @@ class RelAddr VALUE_OBJ_CLASS_SPEC {
|
|||
//
|
||||
// Note: A register location is represented via a Register, not
|
||||
// via an address for efficiency & simplicity reasons.
|
||||
class Address VALUE_OBJ_CLASS_SPEC {
|
||||
class Address {
|
||||
private:
|
||||
Register _base; // Base register.
|
||||
Register _index; // Index register
|
||||
|
@ -275,7 +275,7 @@ class Address VALUE_OBJ_CLASS_SPEC {
|
|||
friend class Assembler;
|
||||
};
|
||||
|
||||
class AddressLiteral VALUE_OBJ_CLASS_SPEC {
|
||||
class AddressLiteral {
|
||||
private:
|
||||
address _address;
|
||||
RelocationHolder _rspec;
|
||||
|
@ -398,7 +398,7 @@ class ExternalAddress: public AddressLiteral {
|
|||
// memory or in a register, in a manner consistent with the
|
||||
// z/Architecture Application Binary Interface, or ABI. This is often
|
||||
// referred to as the native or C calling convention.
|
||||
class Argument VALUE_OBJ_CLASS_SPEC {
|
||||
class Argument {
|
||||
private:
|
||||
int _number;
|
||||
bool _is_in;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2016 SAP SE. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -72,7 +72,7 @@ NativeInstruction* nativeInstruction_at(address address);
|
|||
// N a t i v e I n s t r u c t i o n
|
||||
//-------------------------------------
|
||||
|
||||
class NativeInstruction VALUE_OBJ_CLASS_SPEC {
|
||||
class NativeInstruction {
|
||||
friend class Relocation;
|
||||
|
||||
public:
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -239,7 +239,7 @@ REGISTER_DECLARATION(Register, Oissuing_pc , O1); // where the exception is comi
|
|||
// Note: A register location is represented via a Register, not
|
||||
// via an address for efficiency & simplicity reasons.
|
||||
|
||||
class Address VALUE_OBJ_CLASS_SPEC {
|
||||
class Address {
|
||||
private:
|
||||
Register _base; // Base register.
|
||||
RegisterOrConstant _index_or_disp; // Index register or constant displacement.
|
||||
|
@ -320,7 +320,7 @@ class Address VALUE_OBJ_CLASS_SPEC {
|
|||
};
|
||||
|
||||
|
||||
class AddressLiteral VALUE_OBJ_CLASS_SPEC {
|
||||
class AddressLiteral {
|
||||
private:
|
||||
address _address;
|
||||
RelocationHolder _rspec;
|
||||
|
@ -452,7 +452,7 @@ inline Address RegisterImpl::address_in_saved_window() const {
|
|||
// with the SPARC Application Binary Interface, or ABI. This is
|
||||
// often referred to as the native or C calling convention.
|
||||
|
||||
class Argument VALUE_OBJ_CLASS_SPEC {
|
||||
class Argument {
|
||||
private:
|
||||
int _number;
|
||||
bool _is_in;
|
||||
|
|
|
@ -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.
|
||||
* 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,7 +42,7 @@
|
|||
// - - NativeIllegalInstruction
|
||||
// The base class for different kinds of native instruction abstractions.
|
||||
// Provides the primitive operations to manipulate code relative to this.
|
||||
class NativeInstruction VALUE_OBJ_CLASS_SPEC {
|
||||
class NativeInstruction {
|
||||
friend class Relocation;
|
||||
|
||||
public:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 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
|
||||
|
@ -33,7 +33,7 @@ class BiasedLockingCounters;
|
|||
// Contains all the definitions needed for x86 assembly code generation.
|
||||
|
||||
// Calling convention
|
||||
class Argument VALUE_OBJ_CLASS_SPEC {
|
||||
class Argument {
|
||||
public:
|
||||
enum {
|
||||
#ifdef _LP64
|
||||
|
@ -155,7 +155,7 @@ REGISTER_DECLARATION(Register, rbp_mh_SP_save, noreg);
|
|||
|
||||
class ArrayAddress;
|
||||
|
||||
class Address VALUE_OBJ_CLASS_SPEC {
|
||||
class Address {
|
||||
public:
|
||||
enum ScaleFactor {
|
||||
no_scale = -1,
|
||||
|
@ -333,7 +333,7 @@ class Address VALUE_OBJ_CLASS_SPEC {
|
|||
// on the instruction and the platform. As small step on the way to merging i486/amd64
|
||||
// directories.
|
||||
//
|
||||
class AddressLiteral VALUE_OBJ_CLASS_SPEC {
|
||||
class AddressLiteral {
|
||||
friend class ArrayAddress;
|
||||
RelocationHolder _rspec;
|
||||
// Typically we use AddressLiterals we want to use their rval
|
||||
|
@ -423,7 +423,7 @@ class InternalAddress: public AddressLiteral {
|
|||
// address amd64 can't. We create a class that expresses the concept but does extra
|
||||
// magic on amd64 to get the final result
|
||||
|
||||
class ArrayAddress VALUE_OBJ_CLASS_SPEC {
|
||||
class ArrayAddress {
|
||||
private:
|
||||
|
||||
AddressLiteral _base;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 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
|
||||
|
@ -30,7 +30,7 @@
|
|||
|
||||
class Compilation;
|
||||
|
||||
class FpuStackSim VALUE_OBJ_CLASS_SPEC {
|
||||
class FpuStackSim {
|
||||
private:
|
||||
Compilation* _compilation;
|
||||
int _stack_size;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 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
|
||||
|
@ -122,7 +122,7 @@ inline bool LinearScanWalker::pd_init_regs_for_alloc(Interval* cur) {
|
|||
}
|
||||
|
||||
|
||||
class FpuStackAllocator VALUE_OBJ_CLASS_SPEC {
|
||||
class FpuStackAllocator {
|
||||
private:
|
||||
Compilation* _compilation;
|
||||
LinearScan* _allocator;
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
// The base class for different kinds of native instruction abstractions.
|
||||
// Provides the primitive operations to manipulate code relative to this.
|
||||
|
||||
class NativeInstruction VALUE_OBJ_CLASS_SPEC {
|
||||
class NativeInstruction {
|
||||
friend class Relocation;
|
||||
|
||||
public:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2007 Red Hat, Inc.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -46,7 +46,7 @@
|
|||
// The base class for different kinds of native instruction abstractions.
|
||||
// Provides the primitive operations to manipulate code relative to this.
|
||||
|
||||
class NativeInstruction VALUE_OBJ_CLASS_SPEC {
|
||||
class NativeInstruction {
|
||||
public:
|
||||
bool is_jump() {
|
||||
ShouldNotCallThis();
|
||||
|
|
|
@ -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, 2014 SAP SE. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -80,7 +80,6 @@ inline void OrderAccess::fence() { inlasm_sync(); }
|
|||
|
||||
template<size_t byte_size>
|
||||
struct OrderAccess::PlatformOrderedLoad<byte_size, X_ACQUIRE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const { register T t = Atomic::load(p); inlasm_acquire_reg(t); return t; }
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2017, 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
|
||||
|
@ -65,7 +65,6 @@ inline void OrderAccess::fence() {
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<1, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -78,7 +77,6 @@ struct OrderAccess::PlatformOrderedStore<1, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<2, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -91,7 +89,6 @@ struct OrderAccess::PlatformOrderedStore<2, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<4, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -105,7 +102,6 @@ struct OrderAccess::PlatformOrderedStore<4, RELEASE_X_FENCE>
|
|||
#ifdef AMD64
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<8, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -52,7 +52,6 @@ inline void OrderAccess::fence() {
|
|||
|
||||
template<size_t byte_size>
|
||||
struct OrderAccess::PlatformOrderedLoad<byte_size, X_ACQUIRE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const { T data; __atomic_load(p, &data, __ATOMIC_ACQUIRE); return data; }
|
||||
|
@ -60,7 +59,6 @@ struct OrderAccess::PlatformOrderedLoad<byte_size, X_ACQUIRE>
|
|||
|
||||
template<size_t byte_size>
|
||||
struct OrderAccess::PlatformOrderedStore<byte_size, RELEASE_X>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const { __atomic_store(p, &v, __ATOMIC_RELEASE); }
|
||||
|
@ -68,7 +66,6 @@ struct OrderAccess::PlatformOrderedStore<byte_size, RELEASE_X>
|
|||
|
||||
template<size_t byte_size>
|
||||
struct OrderAccess::PlatformOrderedStore<byte_size, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const { release_store(p, v); fence(); }
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2008, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2008, 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
|
||||
|
@ -132,7 +132,6 @@ inline void OrderAccess::fence() { dmb_sy(); }
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedLoad<1, X_ACQUIRE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const {
|
||||
|
@ -148,7 +147,6 @@ struct OrderAccess::PlatformOrderedLoad<1, X_ACQUIRE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedLoad<2, X_ACQUIRE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const {
|
||||
|
@ -164,7 +162,6 @@ struct OrderAccess::PlatformOrderedLoad<2, X_ACQUIRE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedLoad<4, X_ACQUIRE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const {
|
||||
|
@ -180,7 +177,6 @@ struct OrderAccess::PlatformOrderedLoad<4, X_ACQUIRE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedLoad<8, X_ACQUIRE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const {
|
||||
|
@ -196,7 +192,6 @@ struct OrderAccess::PlatformOrderedLoad<8, X_ACQUIRE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<1, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -210,7 +205,6 @@ struct OrderAccess::PlatformOrderedStore<1, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<2, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -224,7 +218,6 @@ struct OrderAccess::PlatformOrderedStore<2, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<4, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -238,7 +231,6 @@ struct OrderAccess::PlatformOrderedStore<4, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<8, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
|
|
@ -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, 2014 SAP SE. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -83,7 +83,6 @@ inline void OrderAccess::fence() { inlasm_sync(); }
|
|||
|
||||
template<size_t byte_size>
|
||||
struct OrderAccess::PlatformOrderedLoad<byte_size, X_ACQUIRE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const { register T t = Atomic::load(p); inlasm_acquire_reg(t); return t; }
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2016 SAP SE. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
|
@ -76,7 +76,6 @@ inline void OrderAccess::fence() { inlasm_zarch_sync(); }
|
|||
|
||||
template<size_t byte_size>
|
||||
struct OrderAccess::PlatformOrderedLoad<byte_size, X_ACQUIRE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const { register T t = *p; inlasm_zarch_acquire(); return t; }
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2017, 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
|
||||
|
@ -61,7 +61,6 @@ inline void OrderAccess::fence() {
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<1, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -74,7 +73,6 @@ struct OrderAccess::PlatformOrderedStore<1, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<2, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -87,7 +85,6 @@ struct OrderAccess::PlatformOrderedStore<2, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<4, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -101,7 +98,6 @@ struct OrderAccess::PlatformOrderedStore<4, RELEASE_X_FENCE>
|
|||
#ifdef AMD64
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<8, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 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
|
||||
|
@ -29,7 +29,7 @@
|
|||
|
||||
// Implement ADD using a CAS loop.
|
||||
template<size_t byte_size>
|
||||
struct Atomic::PlatformAdd VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::PlatformAdd {
|
||||
template<typename I, typename D>
|
||||
inline D operator()(I add_value, D volatile* dest) const {
|
||||
D old_value = *dest;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2017, 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
|
||||
|
@ -75,7 +75,6 @@ inline void OrderAccess::fence() {
|
|||
#ifndef AMD64
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<1, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -89,7 +88,6 @@ struct OrderAccess::PlatformOrderedStore<1, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<2, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
@ -103,7 +101,6 @@ struct OrderAccess::PlatformOrderedStore<2, RELEASE_X_FENCE>
|
|||
|
||||
template<>
|
||||
struct OrderAccess::PlatformOrderedStore<4, RELEASE_X_FENCE>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2012, 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
|
||||
|
@ -51,7 +51,7 @@ class BytecodeBuffer : public GrowableArray<u1> {
|
|||
};
|
||||
|
||||
// Entries in a yet-to-be-created constant pool. Limited types for now.
|
||||
class BytecodeCPEntry VALUE_OBJ_CLASS_SPEC {
|
||||
class BytecodeCPEntry {
|
||||
public:
|
||||
enum tag {
|
||||
ERROR_TAG,
|
||||
|
|
|
@ -1858,7 +1858,7 @@ class LVT_Hash : public AllStatic {
|
|||
|
||||
|
||||
// Class file LocalVariableTable elements.
|
||||
class Classfile_LVT_Element VALUE_OBJ_CLASS_SPEC {
|
||||
class Classfile_LVT_Element {
|
||||
public:
|
||||
u2 start_bci;
|
||||
u2 length;
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -49,7 +49,7 @@ class TempNewSymbol;
|
|||
//
|
||||
// The bytes describing the class file structure is read from a Stream object
|
||||
|
||||
class ClassFileParser VALUE_OBJ_CLASS_SPEC {
|
||||
class ClassFileParser {
|
||||
|
||||
class ClassAnnotationCollector;
|
||||
class FieldAllocationCount;
|
||||
|
|
|
@ -182,7 +182,7 @@ class ClassLoaderData : public CHeapObj<mtClass> {
|
|||
friend class VMStructs;
|
||||
|
||||
private:
|
||||
class ChunkedHandleList VALUE_OBJ_CLASS_SPEC {
|
||||
class ChunkedHandleList {
|
||||
struct Chunk : public CHeapObj<mtClass> {
|
||||
static const size_t CAPACITY = 32;
|
||||
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -35,7 +35,7 @@ class SimpleCompactHashtable;
|
|||
class SerializeClosure;
|
||||
|
||||
// Stats for symbol tables in the CDS archive
|
||||
class CompactHashtableStats VALUE_OBJ_CLASS_SPEC {
|
||||
class CompactHashtableStats {
|
||||
public:
|
||||
int hashentry_count;
|
||||
int hashentry_bytes;
|
||||
|
@ -71,7 +71,7 @@ public:
|
|||
//
|
||||
class CompactHashtableWriter: public StackObj {
|
||||
public:
|
||||
class Entry VALUE_OBJ_CLASS_SPEC {
|
||||
class Entry {
|
||||
unsigned int _hash;
|
||||
u4 _value;
|
||||
|
||||
|
@ -194,7 +194,7 @@ public:
|
|||
// See CompactHashtableWriter::dump() for how the table is written at CDS
|
||||
// dump time.
|
||||
//
|
||||
class SimpleCompactHashtable VALUE_OBJ_CLASS_SPEC {
|
||||
class SimpleCompactHashtable {
|
||||
protected:
|
||||
address _base_address;
|
||||
u4 _bucket_count;
|
||||
|
@ -281,7 +281,7 @@ public:
|
|||
// Because the dump file may be big (hundred of MB in extreme cases),
|
||||
// we use mmap for fast access when reading it.
|
||||
//
|
||||
class HashtableTextDump VALUE_OBJ_CLASS_SPEC {
|
||||
class HashtableTextDump {
|
||||
int _fd;
|
||||
const char* _base;
|
||||
const char* _p;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2017, 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
|
||||
|
@ -49,7 +49,7 @@ enum {
|
|||
|
||||
class ClassVerifier;
|
||||
|
||||
class VerificationType VALUE_OBJ_CLASS_SPEC {
|
||||
class VerificationType {
|
||||
private:
|
||||
// Least significant bits of _handle are always 0, so we use these as
|
||||
// the indicator that the _handle is valid. Otherwise, the _data field
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 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
|
||||
|
@ -96,7 +96,7 @@ class StackMapTable;
|
|||
#define CHECK_VERIFY_(verifier, result) \
|
||||
CHECK_(result)); if ((verifier)->has_error()) return (result); ((void)0
|
||||
|
||||
class TypeOrigin VALUE_OBJ_CLASS_SPEC {
|
||||
class TypeOrigin {
|
||||
private:
|
||||
typedef enum {
|
||||
CF_LOCALS, // Comes from the current frame locals
|
||||
|
@ -146,7 +146,7 @@ class TypeOrigin VALUE_OBJ_CLASS_SPEC {
|
|||
#endif
|
||||
};
|
||||
|
||||
class ErrorContext VALUE_OBJ_CLASS_SPEC {
|
||||
class ErrorContext {
|
||||
private:
|
||||
typedef enum {
|
||||
INVALID_BYTECODE, // There was a problem with the bytecode
|
||||
|
|
|
@ -129,7 +129,7 @@ class Bytecode: public StackObj {
|
|||
|
||||
|
||||
// Abstractions for lookupswitch bytecode
|
||||
class LookupswitchPair VALUE_OBJ_CLASS_SPEC {
|
||||
class LookupswitchPair {
|
||||
private:
|
||||
const address _bcp;
|
||||
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -38,7 +38,7 @@
|
|||
// more significant bits. The counter is incremented before a method is activated and an
|
||||
// action is triggered when count() > limit().
|
||||
|
||||
class InvocationCounter VALUE_OBJ_CLASS_SPEC {
|
||||
class InvocationCounter {
|
||||
friend class VMStructs;
|
||||
friend class JVMCIVMStructs;
|
||||
friend class ciReplay;
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -40,7 +40,7 @@ class InterpreterCodelet;
|
|||
// A little wrapper class to group tosca-specific entry points into a unit.
|
||||
// (tosca = Top-Of-Stack CAche)
|
||||
|
||||
class EntryPoint VALUE_OBJ_CLASS_SPEC {
|
||||
class EntryPoint {
|
||||
private:
|
||||
address _entry[number_of_states];
|
||||
|
||||
|
@ -62,7 +62,7 @@ class EntryPoint VALUE_OBJ_CLASS_SPEC {
|
|||
//------------------------------------------------------------------------------------------------------------------------
|
||||
// A little wrapper class to group tosca-specific dispatch tables into a unit.
|
||||
|
||||
class DispatchTable VALUE_OBJ_CLASS_SPEC {
|
||||
class DispatchTable {
|
||||
public:
|
||||
enum { length = 1 << BitsPerByte }; // an entry point for each byte value (also for undefined bytecodes)
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 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
|
||||
|
@ -41,7 +41,7 @@ class InterpreterMacroAssembler;
|
|||
// A Template describes the properties of a code template for a given bytecode
|
||||
// and provides a generator to generate the code template.
|
||||
|
||||
class Template VALUE_OBJ_CLASS_SPEC {
|
||||
class Template {
|
||||
private:
|
||||
enum Flags {
|
||||
uses_bcp_bit, // set if template needs the bcp pointing to bytecode
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 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
|
||||
|
@ -110,7 +110,7 @@ class LogTargetImpl;
|
|||
|
||||
template <LogTagType T0, LogTagType T1 = LogTag::__NO_TAG, LogTagType T2 = LogTag::__NO_TAG, LogTagType T3 = LogTag::__NO_TAG,
|
||||
LogTagType T4 = LogTag::__NO_TAG, LogTagType GuardTag = LogTag::__NO_TAG>
|
||||
class LogImpl VALUE_OBJ_CLASS_SPEC {
|
||||
class LogImpl {
|
||||
private:
|
||||
static const size_t LogBufferSize = 512;
|
||||
public:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 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
|
||||
|
@ -29,7 +29,7 @@
|
|||
#include "memory/allocation.hpp"
|
||||
|
||||
// Temporary object containing the necessary data for a log call's decorations (timestamps, etc).
|
||||
class LogDecorations VALUE_OBJ_CLASS_SPEC {
|
||||
class LogDecorations {
|
||||
public:
|
||||
static const int DecorationsBufferSize = 256;
|
||||
private:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 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
|
||||
|
@ -57,7 +57,7 @@
|
|||
// each log message for a given output. Decorators are always prepended in the order
|
||||
// declared above. For example, logging with 'uptime, level, tags' decorators results in:
|
||||
// [0,943s][info ][logging] message.
|
||||
class LogDecorators VALUE_OBJ_CLASS_SPEC {
|
||||
class LogDecorators {
|
||||
public:
|
||||
enum Decorator {
|
||||
#define DECORATOR(name, abbr) name##_decorator,
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2016, 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
|
||||
|
@ -31,7 +31,7 @@
|
|||
class LogMessageBuffer : public StackObj {
|
||||
friend class LogMessageTest;
|
||||
protected:
|
||||
struct LogLine VALUE_OBJ_CLASS_SPEC {
|
||||
struct LogLine {
|
||||
LogLevelType level;
|
||||
size_t message_offset;
|
||||
};
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 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
|
||||
|
@ -44,7 +44,7 @@ class LogOutput;
|
|||
// To remove a node from the list the node must first be unlinked,
|
||||
// and the memory for that node can be freed whenever the removing
|
||||
// thread observes an active reader count of 0 (after unlinking it).
|
||||
class LogOutputList VALUE_OBJ_CLASS_SPEC {
|
||||
class LogOutputList {
|
||||
private:
|
||||
struct LogOutputNode : public CHeapObj<mtLogging> {
|
||||
LogOutput* _value;
|
||||
|
@ -88,7 +88,7 @@ class LogOutputList VALUE_OBJ_CLASS_SPEC {
|
|||
// Set (add/update/remove) the output to the specified level.
|
||||
void set_output_level(LogOutput* output, LogLevelType level);
|
||||
|
||||
class Iterator VALUE_OBJ_CLASS_SPEC {
|
||||
class Iterator {
|
||||
friend class LogOutputList;
|
||||
private:
|
||||
LogOutputNode* _current;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 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
|
||||
|
@ -36,7 +36,7 @@ class LogMessageBuffer;
|
|||
// The tagset represents a combination of tags that occur in a log call somewhere.
|
||||
// Tagsets are created automatically by the LogTagSetMappings and should never be
|
||||
// instantiated directly somewhere else.
|
||||
class LogTagSet VALUE_OBJ_CLASS_SPEC {
|
||||
class LogTagSet {
|
||||
private:
|
||||
static LogTagSet* _list;
|
||||
static size_t _ntagsets;
|
||||
|
|
|
@ -196,14 +196,12 @@ class StackObj ALLOCATION_SUPER_CLASS_SPEC {
|
|||
// if the superclass does not have any virtual methods or
|
||||
// instance fields. The HotSpot implementation relies on this
|
||||
// not to happen. So never make a ValueObj class a direct subclass
|
||||
// of this object, but use the VALUE_OBJ_CLASS_SPEC class instead, e.g.,
|
||||
// like this:
|
||||
//
|
||||
// class A VALUE_OBJ_CLASS_SPEC {
|
||||
// class A {
|
||||
// ...
|
||||
// }
|
||||
//
|
||||
// With gcc and possible other compilers the VALUE_OBJ_CLASS_SPEC can
|
||||
// be defined as a an empty string "".
|
||||
//
|
||||
class _ValueObj {
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
|
||||
static const int JVM_IDENT_MAX = 256;
|
||||
|
||||
class SharedClassPathEntry VALUE_OBJ_CLASS_SPEC {
|
||||
class SharedClassPathEntry {
|
||||
protected:
|
||||
bool _is_dir;
|
||||
time_t _timestamp; // jar/jimage timestamp, 0 if is directory or other
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2001, 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
|
||||
|
@ -42,7 +42,7 @@ class CompactibleFreeListSpace;
|
|||
class Mutex;
|
||||
|
||||
template <class Chunk_t>
|
||||
class FreeList VALUE_OBJ_CLASS_SPEC {
|
||||
class FreeList {
|
||||
friend class CompactibleFreeListSpace;
|
||||
friend class VMStructs;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 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
|
||||
|
@ -32,7 +32,7 @@
|
|||
|
||||
// Blocks
|
||||
|
||||
class HeapBlock VALUE_OBJ_CLASS_SPEC {
|
||||
class HeapBlock {
|
||||
friend class VMStructs;
|
||||
|
||||
public:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 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
|
||||
|
@ -40,7 +40,7 @@
|
|||
|
||||
class MetaWord;
|
||||
|
||||
class MemRegion VALUE_OBJ_CLASS_SPEC {
|
||||
class MemRegion {
|
||||
friend class VMStructs;
|
||||
private:
|
||||
HeapWord* _start;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2012, 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
|
||||
|
@ -33,7 +33,7 @@ class VirtualSpaceNode;
|
|||
// Super class of Metablock and Metachunk to allow them to
|
||||
// be put on the FreeList and in the BinaryTreeDictionary.
|
||||
template <class T>
|
||||
class Metabase VALUE_OBJ_CLASS_SPEC {
|
||||
class Metabase {
|
||||
size_t _word_size;
|
||||
T* _next;
|
||||
T* _prev;
|
||||
|
|
|
@ -3141,7 +3141,7 @@ void MetaspaceAux::print_waste(outputStream* out) {
|
|||
}
|
||||
}
|
||||
|
||||
class MetadataStats VALUE_OBJ_CLASS_SPEC {
|
||||
class MetadataStats {
|
||||
private:
|
||||
size_t _capacity;
|
||||
size_t _used;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, 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
|
||||
|
@ -27,7 +27,7 @@
|
|||
|
||||
#include "memory/allocation.hpp"
|
||||
|
||||
class MetaspaceChunkFreeListSummary VALUE_OBJ_CLASS_SPEC {
|
||||
class MetaspaceChunkFreeListSummary {
|
||||
size_t _num_specialized_chunks;
|
||||
size_t _num_small_chunks;
|
||||
size_t _num_medium_chunks;
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
|
||||
class FileMapInfo;
|
||||
|
||||
class MetaspaceSharedStats VALUE_OBJ_CLASS_SPEC {
|
||||
class MetaspaceSharedStats {
|
||||
public:
|
||||
MetaspaceSharedStats() {
|
||||
memset(this, 0, sizeof(*this));
|
||||
|
|
|
@ -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.
|
||||
* 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,7 +29,7 @@
|
|||
|
||||
// ReservedSpace is a data structure for reserving a contiguous address range.
|
||||
|
||||
class ReservedSpace VALUE_OBJ_CLASS_SPEC {
|
||||
class ReservedSpace {
|
||||
friend class VMStructs;
|
||||
protected:
|
||||
char* _base;
|
||||
|
@ -133,7 +133,7 @@ class ReservedCodeSpace : public ReservedSpace {
|
|||
|
||||
// VirtualSpace is data structure for committing a previously reserved address range in smaller chunks.
|
||||
|
||||
class VirtualSpace VALUE_OBJ_CLASS_SPEC {
|
||||
class VirtualSpace {
|
||||
friend class VMStructs;
|
||||
private:
|
||||
// Reserved area
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2017, 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
|
||||
|
@ -44,7 +44,7 @@
|
|||
// T is an integral type, and is the value_type.
|
||||
// v is an integral constant, and is the value.
|
||||
template<typename T, T v>
|
||||
struct IntegralConstant VALUE_OBJ_CLASS_SPEC {
|
||||
struct IntegralConstant {
|
||||
typedef T value_type;
|
||||
static const value_type value = v;
|
||||
typedef IntegralConstant<T, v> type;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2017, 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
|
||||
|
@ -104,7 +104,7 @@ inline T PrimitiveConversions::cast_using_union(U x) {
|
|||
|
||||
// Give an informative error if the sizes differ.
|
||||
template<typename T, typename U>
|
||||
struct PrimitiveConversions::Cast<T, U, false> VALUE_OBJ_CLASS_SPEC {
|
||||
struct PrimitiveConversions::Cast<T, U, false> {
|
||||
STATIC_ASSERT(sizeof(T) == sizeof(U));
|
||||
};
|
||||
|
||||
|
@ -113,7 +113,6 @@ template<typename T, typename U>
|
|||
struct PrimitiveConversions::Cast<
|
||||
T, U, true,
|
||||
typename EnableIf<IsIntegral<T>::value && IsIntegral<U>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(U x) const { return cast_using_union<T>(x); }
|
||||
};
|
||||
|
@ -125,7 +124,6 @@ struct PrimitiveConversions::Cast<
|
|||
typename EnableIf<IsIntegral<T>::value &&
|
||||
(IsRegisteredEnum<U>::value ||
|
||||
IsFloatingPoint<U>::value)>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(U x) const { return cast_using_union<T>(x); }
|
||||
};
|
||||
|
@ -137,7 +135,6 @@ struct PrimitiveConversions::Cast<
|
|||
typename EnableIf<IsIntegral<U>::value &&
|
||||
(IsRegisteredEnum<T>::value ||
|
||||
IsFloatingPoint<T>::value)>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(U x) const { return cast_using_union<T>(x); }
|
||||
};
|
||||
|
@ -147,7 +144,6 @@ template<typename T, typename U>
|
|||
struct PrimitiveConversions::Cast<
|
||||
T, U*, true,
|
||||
typename EnableIf<IsIntegral<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(U* x) const { return reinterpret_cast<T>(x); }
|
||||
};
|
||||
|
@ -157,7 +153,6 @@ template<typename T, typename U>
|
|||
struct PrimitiveConversions::Cast<
|
||||
T*, U, true,
|
||||
typename EnableIf<IsIntegral<U>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T* operator()(U x) const { return reinterpret_cast<T*>(x); }
|
||||
};
|
||||
|
|
|
@ -130,7 +130,7 @@ namespace AccessInternal {
|
|||
template <DecoratorSet decorators, typename T, BarrierType barrier_type>
|
||||
typename AccessFunction<decorators, T, barrier_type>::type resolve_oop_barrier();
|
||||
|
||||
class AccessLocker VALUE_OBJ_CLASS_SPEC {
|
||||
class AccessLocker {
|
||||
public:
|
||||
AccessLocker();
|
||||
~AccessLocker();
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2017, 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
|
||||
|
@ -88,14 +88,14 @@
|
|||
|
||||
|
||||
// Utility class describing elements in checked exceptions table inlined in Method*.
|
||||
class CheckedExceptionElement VALUE_OBJ_CLASS_SPEC {
|
||||
class CheckedExceptionElement {
|
||||
public:
|
||||
u2 class_cp_index;
|
||||
};
|
||||
|
||||
|
||||
// Utility class describing elements in local variable table inlined in Method*.
|
||||
class LocalVariableTableElement VALUE_OBJ_CLASS_SPEC {
|
||||
class LocalVariableTableElement {
|
||||
public:
|
||||
u2 start_bci;
|
||||
u2 length;
|
||||
|
@ -106,7 +106,7 @@ class LocalVariableTableElement VALUE_OBJ_CLASS_SPEC {
|
|||
};
|
||||
|
||||
// Utility class describing elements in exception table
|
||||
class ExceptionTableElement VALUE_OBJ_CLASS_SPEC {
|
||||
class ExceptionTableElement {
|
||||
public:
|
||||
u2 start_pc;
|
||||
u2 end_pc;
|
||||
|
@ -115,7 +115,7 @@ class ExceptionTableElement VALUE_OBJ_CLASS_SPEC {
|
|||
};
|
||||
|
||||
// Utility class describing elements in method parameters
|
||||
class MethodParametersElement VALUE_OBJ_CLASS_SPEC {
|
||||
class MethodParametersElement {
|
||||
public:
|
||||
u2 name_cp_index;
|
||||
u2 flags;
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
|
||||
class SymbolHashMap;
|
||||
|
||||
class CPSlot VALUE_OBJ_CLASS_SPEC {
|
||||
class CPSlot {
|
||||
friend class ConstantPool;
|
||||
intptr_t _ptr;
|
||||
enum TagBits {_pseudo_bit = 1};
|
||||
|
@ -67,7 +67,7 @@ class CPSlot VALUE_OBJ_CLASS_SPEC {
|
|||
|
||||
// This represents a JVM_CONSTANT_Class, JVM_CONSTANT_UnresolvedClass, or
|
||||
// JVM_CONSTANT_UnresolvedClassInError slot in the constant pool.
|
||||
class CPKlassSlot VALUE_OBJ_CLASS_SPEC {
|
||||
class CPKlassSlot {
|
||||
// cp->symbol_at(_name_index) gives the name of the class.
|
||||
int _name_index;
|
||||
|
||||
|
|
|
@ -129,7 +129,7 @@ class PSPromotionManager;
|
|||
|
||||
class CallInfo;
|
||||
|
||||
class ConstantPoolCacheEntry VALUE_OBJ_CLASS_SPEC {
|
||||
class ConstantPoolCacheEntry {
|
||||
friend class VMStructs;
|
||||
friend class constantPoolCacheKlass;
|
||||
friend class ConstantPool;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2011, 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
|
||||
|
@ -35,7 +35,7 @@
|
|||
// array type. FieldInfo generally shouldn't be used directly.
|
||||
// Fields should be queried either through InstanceKlass or through
|
||||
// the various FieldStreams.
|
||||
class FieldInfo VALUE_OBJ_CLASS_SPEC {
|
||||
class FieldInfo {
|
||||
friend class fieldDescriptor;
|
||||
friend class JavaFieldStream;
|
||||
friend class ClassFileParser;
|
||||
|
|
|
@ -71,7 +71,7 @@ class RetTableEntry : public ResourceObj {
|
|||
};
|
||||
|
||||
|
||||
class RetTable VALUE_OBJ_CLASS_SPEC {
|
||||
class RetTable {
|
||||
private:
|
||||
RetTableEntry *_first;
|
||||
static int _init_nof_entries;
|
||||
|
@ -87,7 +87,7 @@ class RetTable VALUE_OBJ_CLASS_SPEC {
|
|||
//
|
||||
// CellTypeState
|
||||
//
|
||||
class CellTypeState VALUE_OBJ_CLASS_SPEC {
|
||||
class CellTypeState {
|
||||
private:
|
||||
unsigned int _state;
|
||||
|
||||
|
@ -288,7 +288,7 @@ class BasicBlock: ResourceObj {
|
|||
//
|
||||
// Main class used to compute the pointer-maps in a Method
|
||||
//
|
||||
class GenerateOopMap VALUE_OBJ_CLASS_SPEC {
|
||||
class GenerateOopMap {
|
||||
protected:
|
||||
|
||||
// _monitor_top is set to this constant to indicate that a monitor matching
|
||||
|
|
|
@ -87,9 +87,8 @@ class FieldPrinter: public FieldClosure {
|
|||
};
|
||||
#endif // !PRODUCT
|
||||
|
||||
// ValueObjs embedded in klass. Describes where oops are located in instances of
|
||||
// this klass.
|
||||
class OopMapBlock VALUE_OBJ_CLASS_SPEC {
|
||||
// Describes where oops are located in instances of this klass.
|
||||
class OopMapBlock {
|
||||
public:
|
||||
// Byte offset of the first oop mapped by this block.
|
||||
int offset() const { return _offset; }
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -41,7 +41,7 @@
|
|||
|
||||
class vtableEntry;
|
||||
|
||||
class klassVtable VALUE_OBJ_CLASS_SPEC {
|
||||
class klassVtable {
|
||||
Klass* _klass; // my klass
|
||||
int _tableOffset; // offset of start of vtable data within klass
|
||||
int _length; // length of vtable (number of entries)
|
||||
|
@ -188,7 +188,7 @@ class klassVtable VALUE_OBJ_CLASS_SPEC {
|
|||
// destination is compiled:
|
||||
// from_compiled_code_entry_point -> nmethod entry point
|
||||
// from_interpreter_entry_point -> i2cadapter
|
||||
class vtableEntry VALUE_OBJ_CLASS_SPEC {
|
||||
class vtableEntry {
|
||||
friend class VMStructs;
|
||||
friend class JVMCIVMStructs;
|
||||
|
||||
|
@ -234,7 +234,7 @@ inline Method** klassVtable::adr_method_at(int i) const {
|
|||
class klassItable;
|
||||
class itableMethodEntry;
|
||||
|
||||
class itableOffsetEntry VALUE_OBJ_CLASS_SPEC {
|
||||
class itableOffsetEntry {
|
||||
private:
|
||||
Klass* _interface;
|
||||
int _offset;
|
||||
|
@ -257,7 +257,7 @@ class itableOffsetEntry VALUE_OBJ_CLASS_SPEC {
|
|||
};
|
||||
|
||||
|
||||
class itableMethodEntry VALUE_OBJ_CLASS_SPEC {
|
||||
class itableMethodEntry {
|
||||
private:
|
||||
Method* _method;
|
||||
|
||||
|
@ -294,7 +294,7 @@ class itableMethodEntry VALUE_OBJ_CLASS_SPEC {
|
|||
// -- vtable for interface 2 ---
|
||||
// ...
|
||||
//
|
||||
class klassItable VALUE_OBJ_CLASS_SPEC {
|
||||
class klassItable {
|
||||
private:
|
||||
InstanceKlass* _klass; // my klass
|
||||
int _table_offset; // offset of start of itable data within klass (in words)
|
||||
|
|
|
@ -74,7 +74,7 @@ class ProfileData;
|
|||
// DataLayout
|
||||
//
|
||||
// Overlay for generic profiling data.
|
||||
class DataLayout VALUE_OBJ_CLASS_SPEC {
|
||||
class DataLayout {
|
||||
friend class VMStructs;
|
||||
friend class JVMCIVMStructs;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2012, 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
|
||||
|
@ -47,7 +47,7 @@ class JvmtiEnv;
|
|||
// overkill as a means to get an assert and name the geater than
|
||||
// operator. I'm trying to to rewrite everything.
|
||||
|
||||
class JvmtiFramePop VALUE_OBJ_CLASS_SPEC {
|
||||
class JvmtiFramePop {
|
||||
private:
|
||||
// Frame number counting from BOTTOM (oldest) frame;
|
||||
// bottom frame == #0
|
||||
|
|
|
@ -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
|
||||
|
@ -75,7 +75,7 @@ const int TOTAL_MAX_EVENT_TYPE_VAL = JVMTI_MAX_EVENT_TYPE_VAL;
|
|||
// for inlines see jvmtiEventController_inline.hpp
|
||||
//
|
||||
|
||||
class JvmtiEventEnabled VALUE_OBJ_CLASS_SPEC {
|
||||
class JvmtiEventEnabled {
|
||||
private:
|
||||
friend class JvmtiEventControllerPrivate;
|
||||
jlong _enabled_bits;
|
||||
|
@ -104,7 +104,7 @@ public:
|
|||
// for inlines see jvmtiEventController_inline.hpp
|
||||
//
|
||||
|
||||
class JvmtiEnvThreadEventEnable VALUE_OBJ_CLASS_SPEC {
|
||||
class JvmtiEnvThreadEventEnable {
|
||||
private:
|
||||
friend class JvmtiEventControllerPrivate;
|
||||
JvmtiEventEnabled _event_user_enabled;
|
||||
|
@ -127,7 +127,7 @@ public:
|
|||
// for inlines see jvmtiEventController_inline.hpp
|
||||
//
|
||||
|
||||
class JvmtiThreadEventEnable VALUE_OBJ_CLASS_SPEC {
|
||||
class JvmtiThreadEventEnable {
|
||||
private:
|
||||
friend class JvmtiEventControllerPrivate;
|
||||
JvmtiEventEnabled _event_enabled;
|
||||
|
@ -148,7 +148,7 @@ public:
|
|||
// for inlines see jvmtiEventController_inline.hpp
|
||||
//
|
||||
|
||||
class JvmtiEnvEventEnable VALUE_OBJ_CLASS_SPEC {
|
||||
class JvmtiEnvEventEnable {
|
||||
private:
|
||||
friend class JvmtiEventControllerPrivate;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 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
|
||||
|
@ -74,7 +74,7 @@ public:
|
|||
virtual void metadata_do(void f(Metadata*)) =0;
|
||||
};
|
||||
|
||||
class GrowableCache VALUE_OBJ_CLASS_SPEC {
|
||||
class GrowableCache {
|
||||
|
||||
private:
|
||||
// Object pointer passed into cache & listener functions.
|
||||
|
@ -451,7 +451,7 @@ public:
|
|||
* This is currently only used for posting compiled-method-load and unload
|
||||
* events, which we don't want posted from the compiler thread.
|
||||
*/
|
||||
class JvmtiDeferredEvent VALUE_OBJ_CLASS_SPEC {
|
||||
class JvmtiDeferredEvent {
|
||||
friend class JvmtiDeferredEventQueue;
|
||||
private:
|
||||
typedef enum {
|
||||
|
|
|
@ -1762,7 +1762,7 @@ static jvmtiHeapRootKind toJvmtiHeapRootKind(jvmtiHeapReferenceKind kind) {
|
|||
|
||||
// Base class for all heap walk contexts. The base class maintains a flag
|
||||
// to indicate if the context is valid or not.
|
||||
class HeapWalkContext VALUE_OBJ_CLASS_SPEC {
|
||||
class HeapWalkContext {
|
||||
private:
|
||||
bool _valid;
|
||||
public:
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -30,7 +30,7 @@
|
|||
#include "runtime/vframe.hpp"
|
||||
#include "utilities/growableArray.hpp"
|
||||
|
||||
class PrivilegedElement VALUE_OBJ_CLASS_SPEC {
|
||||
class PrivilegedElement {
|
||||
private:
|
||||
Klass* _klass; // klass for method
|
||||
oop _privileged_context; // context for operation
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -167,7 +167,7 @@ public:
|
|||
};
|
||||
|
||||
// maintain an order of entry list of AgentLibrary
|
||||
class AgentLibraryList VALUE_OBJ_CLASS_SPEC {
|
||||
class AgentLibraryList {
|
||||
private:
|
||||
AgentLibrary* _first;
|
||||
AgentLibrary* _last;
|
||||
|
|
|
@ -367,7 +367,6 @@ struct Atomic::LoadImpl<
|
|||
T,
|
||||
PlatformOp,
|
||||
typename EnableIf<IsIntegral<T>::value || IsRegisteredEnum<T>::value || IsPointer<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(T const volatile* dest) const {
|
||||
// Forward to the platform handler for the size of T.
|
||||
|
@ -387,7 +386,6 @@ struct Atomic::LoadImpl<
|
|||
T,
|
||||
PlatformOp,
|
||||
typename EnableIf<PrimitiveConversions::Translate<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(T const volatile* dest) const {
|
||||
typedef PrimitiveConversions::Translate<T> Translator;
|
||||
|
@ -405,7 +403,7 @@ struct Atomic::LoadImpl<
|
|||
// supports wide atomics, then it has to use specialization
|
||||
// of Atomic::PlatformLoad for that wider size class.
|
||||
template<size_t byte_size>
|
||||
struct Atomic::PlatformLoad VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::PlatformLoad {
|
||||
template<typename T>
|
||||
T operator()(T const volatile* dest) const {
|
||||
STATIC_ASSERT(sizeof(T) <= sizeof(void*)); // wide atomics need specialization
|
||||
|
@ -421,7 +419,6 @@ struct Atomic::StoreImpl<
|
|||
T, T,
|
||||
PlatformOp,
|
||||
typename EnableIf<IsIntegral<T>::value || IsRegisteredEnum<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
void operator()(T new_value, T volatile* dest) const {
|
||||
// Forward to the platform handler for the size of T.
|
||||
|
@ -439,7 +436,6 @@ struct Atomic::StoreImpl<
|
|||
T*, D*,
|
||||
PlatformOp,
|
||||
typename EnableIf<Atomic::IsPointerConvertible<T*, D*>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
void operator()(T* new_value, D* volatile* dest) const {
|
||||
// Allow derived to base conversion, and adding cv-qualifiers.
|
||||
|
@ -459,7 +455,6 @@ struct Atomic::StoreImpl<
|
|||
T, T,
|
||||
PlatformOp,
|
||||
typename EnableIf<PrimitiveConversions::Translate<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
void operator()(T new_value, T volatile* dest) const {
|
||||
typedef PrimitiveConversions::Translate<T> Translator;
|
||||
|
@ -477,7 +472,7 @@ struct Atomic::StoreImpl<
|
|||
// supports wide atomics, then it has to use specialization
|
||||
// of Atomic::PlatformStore for that wider size class.
|
||||
template<size_t byte_size>
|
||||
struct Atomic::PlatformStore VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::PlatformStore {
|
||||
template<typename T>
|
||||
void operator()(T new_value,
|
||||
T volatile* dest) const {
|
||||
|
@ -491,13 +486,13 @@ struct Atomic::PlatformStore VALUE_OBJ_CLASS_SPEC {
|
|||
// be complete.
|
||||
|
||||
template<typename Derived>
|
||||
struct Atomic::FetchAndAdd VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::FetchAndAdd {
|
||||
template<typename I, typename D>
|
||||
D operator()(I add_value, D volatile* dest) const;
|
||||
};
|
||||
|
||||
template<typename Derived>
|
||||
struct Atomic::AddAndFetch VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::AddAndFetch {
|
||||
template<typename I, typename D>
|
||||
D operator()(I add_value, D volatile* dest) const;
|
||||
};
|
||||
|
@ -541,7 +536,7 @@ inline D Atomic::sub(I sub_value, D volatile* dest) {
|
|||
// specializations of the class. The platform file is responsible for
|
||||
// providing those.
|
||||
template<size_t byte_size>
|
||||
struct Atomic::PlatformCmpxchg VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::PlatformCmpxchg {
|
||||
template<typename T>
|
||||
T operator()(T exchange_value,
|
||||
T volatile* dest,
|
||||
|
@ -552,7 +547,7 @@ struct Atomic::PlatformCmpxchg VALUE_OBJ_CLASS_SPEC {
|
|||
// Define the class before including platform file, which may use this
|
||||
// as a base class, requiring it be complete. The definition is later
|
||||
// in this file, near the other definitions related to cmpxchg.
|
||||
struct Atomic::CmpxchgByteUsingInt VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::CmpxchgByteUsingInt {
|
||||
template<typename T>
|
||||
T operator()(T exchange_value,
|
||||
T volatile* dest,
|
||||
|
@ -566,7 +561,7 @@ struct Atomic::CmpxchgByteUsingInt VALUE_OBJ_CLASS_SPEC {
|
|||
// specializations of the class. The platform file is responsible for
|
||||
// providing those.
|
||||
template<size_t byte_size>
|
||||
struct Atomic::PlatformXchg VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::PlatformXchg {
|
||||
template<typename T>
|
||||
T operator()(T exchange_value,
|
||||
T volatile* dest) const;
|
||||
|
@ -605,7 +600,6 @@ struct Atomic::AddImpl<
|
|||
IsIntegral<D>::value &&
|
||||
(sizeof(I) <= sizeof(D)) &&
|
||||
(IsSigned<I>::value == IsSigned<D>::value)>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
D operator()(I add_value, D volatile* dest) const {
|
||||
D addend = add_value;
|
||||
|
@ -617,7 +611,6 @@ template<typename I, typename P>
|
|||
struct Atomic::AddImpl<
|
||||
I, P*,
|
||||
typename EnableIf<IsIntegral<I>::value && (sizeof(I) <= sizeof(P*))>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
P* operator()(I add_value, P* volatile* dest) const {
|
||||
STATIC_ASSERT(sizeof(intptr_t) == sizeof(P*));
|
||||
|
@ -640,7 +633,7 @@ struct Atomic::AddImpl<
|
|||
//
|
||||
// Use the ATOMIC_SHORT_PAIR macro (see macros.hpp) to get the desired alignment.
|
||||
template<>
|
||||
struct Atomic::AddImpl<short, short> VALUE_OBJ_CLASS_SPEC {
|
||||
struct Atomic::AddImpl<short, short> {
|
||||
short operator()(short add_value, short volatile* dest) const {
|
||||
#ifdef VM_LITTLE_ENDIAN
|
||||
assert((intx(dest) & 0x03) == 0x02, "wrong alignment");
|
||||
|
@ -707,7 +700,6 @@ template<typename T>
|
|||
struct Atomic::CmpxchgImpl<
|
||||
T, T, T,
|
||||
typename EnableIf<IsIntegral<T>::value || IsRegisteredEnum<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(T exchange_value, T volatile* dest, T compare_value,
|
||||
cmpxchg_memory_order order) const {
|
||||
|
@ -734,7 +726,6 @@ struct Atomic::CmpxchgImpl<
|
|||
typename EnableIf<Atomic::IsPointerConvertible<T*, D*>::value &&
|
||||
IsSame<typename RemoveCV<D>::type,
|
||||
typename RemoveCV<U>::type>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
D* operator()(T* exchange_value, D* volatile* dest, U* compare_value,
|
||||
cmpxchg_memory_order order) const {
|
||||
|
@ -758,7 +749,6 @@ template<typename T>
|
|||
struct Atomic::CmpxchgImpl<
|
||||
T, T, T,
|
||||
typename EnableIf<PrimitiveConversions::Translate<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(T exchange_value, T volatile* dest, T compare_value,
|
||||
cmpxchg_memory_order order) const {
|
||||
|
@ -830,7 +820,6 @@ template<typename T>
|
|||
struct Atomic::XchgImpl<
|
||||
T, T,
|
||||
typename EnableIf<IsIntegral<T>::value || IsRegisteredEnum<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(T exchange_value, T volatile* dest) const {
|
||||
// Forward to the platform handler for the size of T.
|
||||
|
@ -847,7 +836,6 @@ template<typename T, typename D>
|
|||
struct Atomic::XchgImpl<
|
||||
T*, D*,
|
||||
typename EnableIf<Atomic::IsPointerConvertible<T*, D*>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
D* operator()(T* exchange_value, D* volatile* dest) const {
|
||||
// Allow derived to base conversion, and adding cv-qualifiers.
|
||||
|
@ -867,7 +855,6 @@ template<typename T>
|
|||
struct Atomic::XchgImpl<
|
||||
T, T,
|
||||
typename EnableIf<PrimitiveConversions::Translate<T>::value>::type>
|
||||
VALUE_OBJ_CLASS_SPEC
|
||||
{
|
||||
T operator()(T exchange_value, T volatile* dest) const {
|
||||
typedef PrimitiveConversions::Translate<T> Translator;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 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
|
||||
|
@ -28,7 +28,7 @@
|
|||
#include "oops/markOop.hpp"
|
||||
#include "runtime/handles.hpp"
|
||||
|
||||
class BasicLock VALUE_OBJ_CLASS_SPEC {
|
||||
class BasicLock {
|
||||
friend class VMStructs;
|
||||
friend class JVMCIVMStructs;
|
||||
private:
|
||||
|
@ -54,7 +54,7 @@ class BasicLock VALUE_OBJ_CLASS_SPEC {
|
|||
// alignment of the embedded BasicLock objects on such machines, we
|
||||
// put the embedded BasicLock at the beginning of the struct.
|
||||
|
||||
class BasicObjectLock VALUE_OBJ_CLASS_SPEC {
|
||||
class BasicObjectLock {
|
||||
friend class VMStructs;
|
||||
private:
|
||||
BasicLock _lock; // the lock, must be double word aligned
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2005, 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
|
||||
|
@ -108,7 +108,7 @@
|
|||
// again, a bulk heap sweep.
|
||||
|
||||
// Biased locking counters
|
||||
class BiasedLockingCounters VALUE_OBJ_CLASS_SPEC {
|
||||
class BiasedLockingCounters {
|
||||
private:
|
||||
int _total_entry_count;
|
||||
int _biased_lock_entry_count;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 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
|
||||
|
@ -31,7 +31,7 @@
|
|||
// An ExtendedPC contains the _pc from a signal handler in a platform
|
||||
// independent way.
|
||||
|
||||
class ExtendedPC VALUE_OBJ_CLASS_SPEC {
|
||||
class ExtendedPC {
|
||||
private:
|
||||
address _pc;
|
||||
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -35,7 +35,7 @@
|
|||
// It needs the class constant pool to work (because it only holds indices into the pool
|
||||
// rather than the actual info).
|
||||
|
||||
class fieldDescriptor VALUE_OBJ_CLASS_SPEC {
|
||||
class fieldDescriptor {
|
||||
private:
|
||||
AccessFlags _access_flags;
|
||||
int _index; // the field index
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -47,7 +47,7 @@ class vframeArray;
|
|||
// so that one physical frame can correspond to multiple source level
|
||||
// frames because of inlining.
|
||||
|
||||
class frame VALUE_OBJ_CLASS_SPEC {
|
||||
class frame {
|
||||
private:
|
||||
// Instance variables:
|
||||
intptr_t* _sp; // stack pointer (from Thread::last_Java_sp)
|
||||
|
@ -426,7 +426,7 @@ class frame VALUE_OBJ_CLASS_SPEC {
|
|||
|
||||
#ifndef PRODUCT
|
||||
// A simple class to describe a location on the stack
|
||||
class FrameValue VALUE_OBJ_CLASS_SPEC {
|
||||
class FrameValue {
|
||||
public:
|
||||
intptr_t* location;
|
||||
char* description;
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -61,7 +61,7 @@ class Klass;
|
|||
// Base class for all handles. Provides overloading of frequently
|
||||
// used operators for ease of use.
|
||||
|
||||
class Handle VALUE_OBJ_CLASS_SPEC {
|
||||
class Handle {
|
||||
private:
|
||||
oop* _handle;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2017, 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
|
||||
|
@ -49,7 +49,7 @@ class HandshakeOperation;
|
|||
// VM thread and JavaThread are serialized with the semaphore making sure
|
||||
// the operation is only done by either VM thread on behalf of the JavaThread
|
||||
// or the JavaThread itself.
|
||||
class HandshakeState VALUE_OBJ_CLASS_SPEC {
|
||||
class HandshakeState {
|
||||
HandshakeOperation* volatile _operation;
|
||||
|
||||
Semaphore _semaphore;
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -56,7 +56,7 @@ extern void vm_shutdown_during_initialization(const char* error, const char* mes
|
|||
* as defined by JEP-223, most of the code related to handle the version
|
||||
* string prior to JDK 1.6 was removed (partial initialization)
|
||||
*/
|
||||
class JDK_Version VALUE_OBJ_CLASS_SPEC {
|
||||
class JDK_Version {
|
||||
friend class VMStructs;
|
||||
friend class Universe;
|
||||
friend void JDK_Version_init();
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2002, 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
|
||||
|
@ -34,7 +34,7 @@
|
|||
//
|
||||
class JavaThread;
|
||||
|
||||
class JavaFrameAnchor VALUE_OBJ_CLASS_SPEC {
|
||||
class JavaFrameAnchor {
|
||||
// Too many friends...
|
||||
friend class CallNativeDirectNode;
|
||||
friend class OptoRuntime;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2017, 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
|
||||
|
@ -296,7 +296,7 @@ class OrderAccess : private Atomic {
|
|||
// generalized variant is used.
|
||||
|
||||
template<size_t byte_size, ScopedFenceType type>
|
||||
struct OrderAccess::PlatformOrderedStore VALUE_OBJ_CLASS_SPEC {
|
||||
struct OrderAccess::PlatformOrderedStore {
|
||||
template <typename T>
|
||||
void operator()(T v, volatile T* p) const {
|
||||
ordered_store<T, type>(p, v);
|
||||
|
@ -304,7 +304,7 @@ struct OrderAccess::PlatformOrderedStore VALUE_OBJ_CLASS_SPEC {
|
|||
};
|
||||
|
||||
template<size_t byte_size, ScopedFenceType type>
|
||||
struct OrderAccess::PlatformOrderedLoad VALUE_OBJ_CLASS_SPEC {
|
||||
struct OrderAccess::PlatformOrderedLoad {
|
||||
template <typename T>
|
||||
T operator()(const volatile T* p) const {
|
||||
return ordered_load<T, type>(p);
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 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
|
||||
|
@ -44,7 +44,7 @@
|
|||
// ...
|
||||
// }
|
||||
|
||||
class KlassStream VALUE_OBJ_CLASS_SPEC {
|
||||
class KlassStream {
|
||||
protected:
|
||||
InstanceKlass* _klass; // current klass/interface iterated over
|
||||
InstanceKlass* _base_klass; // initial klass/interface to iterate over
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, 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
|
||||
|
@ -62,7 +62,7 @@
|
|||
// supported for stack locks just like inflated locks.
|
||||
|
||||
// RTM locking counters
|
||||
class RTMLockingCounters VALUE_OBJ_CLASS_SPEC {
|
||||
class RTMLockingCounters {
|
||||
private:
|
||||
uintx _total_count; // Total RTM locks count
|
||||
uintx _abort_count; // Total aborts count
|
||||
|
|
|
@ -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.
|
||||
* 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,7 +29,7 @@
|
|||
|
||||
// Timers for simple measurement.
|
||||
|
||||
class elapsedTimer VALUE_OBJ_CLASS_SPEC {
|
||||
class elapsedTimer {
|
||||
friend class VMStructs;
|
||||
private:
|
||||
jlong _counter;
|
||||
|
@ -50,7 +50,7 @@ class elapsedTimer VALUE_OBJ_CLASS_SPEC {
|
|||
};
|
||||
|
||||
// TimeStamp is used for recording when an event took place.
|
||||
class TimeStamp VALUE_OBJ_CLASS_SPEC {
|
||||
class TimeStamp {
|
||||
private:
|
||||
jlong _counter;
|
||||
public:
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2014, 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
|
||||
|
@ -30,7 +30,7 @@
|
|||
|
||||
// Allocation site represents a code path that makes a memory
|
||||
// allocation
|
||||
template <class E> class AllocationSite VALUE_OBJ_CLASS_SPEC {
|
||||
template <class E> class AllocationSite {
|
||||
private:
|
||||
NativeCallStack _call_stack;
|
||||
E e;
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
* records total memory allocation size and number of allocations.
|
||||
* The counters are updated atomically.
|
||||
*/
|
||||
class MemoryCounter VALUE_OBJ_CLASS_SPEC {
|
||||
class MemoryCounter {
|
||||
private:
|
||||
volatile size_t _count;
|
||||
volatile size_t _size;
|
||||
|
@ -89,7 +89,7 @@ class MemoryCounter VALUE_OBJ_CLASS_SPEC {
|
|||
* It includes the memory acquired through os::malloc()
|
||||
* call and arena's backing memory.
|
||||
*/
|
||||
class MallocMemory VALUE_OBJ_CLASS_SPEC {
|
||||
class MallocMemory {
|
||||
private:
|
||||
MemoryCounter _malloc;
|
||||
MemoryCounter _arena;
|
||||
|
@ -242,7 +242,7 @@ class MallocMemorySummary : AllStatic {
|
|||
* which ensures 8-bytes alignment on 32-bit systems and 16-bytes on 64-bit systems (Product build).
|
||||
*/
|
||||
|
||||
class MallocHeader VALUE_OBJ_CLASS_SPEC {
|
||||
class MallocHeader {
|
||||
#ifdef _LP64
|
||||
size_t _size : 64;
|
||||
size_t _flags : 8;
|
||||
|
|
|
@ -42,7 +42,7 @@ typedef LinkedListIterator<ReservedMemoryRegion> VirtualMemoryAllocation
|
|||
/*
|
||||
* Baseline a memory snapshot
|
||||
*/
|
||||
class MemBaseline VALUE_OBJ_CLASS_SPEC {
|
||||
class MemBaseline {
|
||||
public:
|
||||
enum BaselineThreshold {
|
||||
SIZE_THRESHOLD = K // Only allocation size over this threshold will be baselined.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2003, 2013, 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
|
||||
|
@ -44,7 +44,7 @@
|
|||
// memory for memory management could be less than the amount of
|
||||
// committed memory. Its value may be undefined.
|
||||
|
||||
class MemoryUsage VALUE_OBJ_CLASS_SPEC {
|
||||
class MemoryUsage {
|
||||
private:
|
||||
size_t _initSize;
|
||||
size_t _used;
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
/*
|
||||
* Virtual memory counter
|
||||
*/
|
||||
class VirtualMemory VALUE_OBJ_CLASS_SPEC {
|
||||
class VirtualMemory {
|
||||
private:
|
||||
size_t _reserved;
|
||||
size_t _committed;
|
||||
|
@ -177,7 +177,7 @@ class VirtualMemorySummary : AllStatic {
|
|||
/*
|
||||
* A virtual memory region
|
||||
*/
|
||||
class VirtualMemoryRegion VALUE_OBJ_CLASS_SPEC {
|
||||
class VirtualMemoryRegion {
|
||||
private:
|
||||
address _base_address;
|
||||
size_t _size;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1997, 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
|
||||
|
@ -97,7 +97,7 @@ enum {
|
|||
};
|
||||
|
||||
|
||||
class AccessFlags VALUE_OBJ_CLASS_SPEC {
|
||||
class AccessFlags {
|
||||
friend class VMStructs;
|
||||
private:
|
||||
jint _flags;
|
||||
|
|
|
@ -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.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -44,7 +44,7 @@ class BitMapClosure;
|
|||
//
|
||||
// The allocation of the backing storage for the BitMap are handled by
|
||||
// the subclasses. BitMap doesn't allocate or delete backing storage.
|
||||
class BitMap VALUE_OBJ_CLASS_SPEC {
|
||||
class BitMap {
|
||||
friend class BitMap2D;
|
||||
|
||||
public:
|
||||
|
@ -381,7 +381,7 @@ class CHeapBitMap : public BitMap {
|
|||
};
|
||||
|
||||
// Convenience class wrapping BitMap which provides multiple bits per slot.
|
||||
class BitMap2D VALUE_OBJ_CLASS_SPEC {
|
||||
class BitMap2D {
|
||||
public:
|
||||
typedef BitMap::idx_t idx_t; // Type used for bit and word indices.
|
||||
typedef BitMap::bm_word_t bm_word_t; // Element type of array that
|
||||
|
@ -427,7 +427,7 @@ class BitMap2D VALUE_OBJ_CLASS_SPEC {
|
|||
|
||||
// Closure for iterating over BitMaps
|
||||
|
||||
class BitMapClosure VALUE_OBJ_CLASS_SPEC {
|
||||
class BitMapClosure {
|
||||
public:
|
||||
// Callback when bit in map is set. Should normally return "true";
|
||||
// return of false indicates that the bitmap iteration should terminate.
|
||||
|
|
|
@ -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.
|
||||
* 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 @@ enum {
|
|||
};
|
||||
|
||||
|
||||
class constantTag VALUE_OBJ_CLASS_SPEC {
|
||||
class constantTag {
|
||||
private:
|
||||
jbyte _tag;
|
||||
public:
|
||||
|
|
|
@ -76,7 +76,7 @@ class ElfSymbolTable;
|
|||
class ElfFuncDescTable;
|
||||
|
||||
// ELF section, may or may not have cached data
|
||||
class ElfSection VALUE_OBJ_CLASS_SPEC {
|
||||
class ElfSection {
|
||||
private:
|
||||
Elf_Shdr _section_hdr;
|
||||
void* _section_data;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2015, 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
|
||||
|
@ -49,7 +49,7 @@
|
|||
// bound on the size of a class hierarchy this utility can be used
|
||||
// with.
|
||||
template<typename T, typename TagType>
|
||||
class FakeRttiSupport VALUE_OBJ_CLASS_SPEC {
|
||||
class FakeRttiSupport {
|
||||
friend class VMStructs;
|
||||
public:
|
||||
// Construct with the indicated concrete tag, and include the
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2000, 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
|
||||
|
@ -60,7 +60,7 @@
|
|||
|
||||
#ifdef ASSERT
|
||||
|
||||
class ByteSize VALUE_OBJ_CLASS_SPEC {
|
||||
class ByteSize {
|
||||
private:
|
||||
int _size;
|
||||
|
||||
|
@ -92,7 +92,7 @@ inline ByteSize in_ByteSize(int size) { return ByteSize(size); }
|
|||
inline int in_bytes(ByteSize x) { return x._size; }
|
||||
|
||||
|
||||
class WordSize VALUE_OBJ_CLASS_SPEC {
|
||||
class WordSize {
|
||||
private:
|
||||
int _size;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2013, 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
|
||||
|
@ -30,7 +30,7 @@
|
|||
|
||||
class Ticks;
|
||||
|
||||
class Tickspan VALUE_OBJ_CLASS_SPEC {
|
||||
class Tickspan {
|
||||
friend class Ticks;
|
||||
friend Tickspan operator-(const Ticks& end, const Ticks& start);
|
||||
|
||||
|
@ -53,7 +53,7 @@ class Tickspan VALUE_OBJ_CLASS_SPEC {
|
|||
|
||||
};
|
||||
|
||||
class Ticks VALUE_OBJ_CLASS_SPEC {
|
||||
class Ticks {
|
||||
private:
|
||||
jlong _stamp_ticks;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue