Thu, 20 Feb 2020 03:10:15 +0000
Merge
1.1 --- a/src/cpu/ppc/vm/globals_ppc.hpp Mon Feb 17 09:41:42 2020 +0000 1.2 +++ b/src/cpu/ppc/vm/globals_ppc.hpp Thu Feb 20 03:10:15 2020 +0000 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 2002, 2018, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 2002, 2019, Oracle and/or its affiliates. All rights reserved. 1.7 * Copyright 2012, 2018 SAP AG. All rights reserved. 1.8 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.9 * 1.10 @@ -33,10 +33,8 @@ 1.11 // (see globals.hpp) 1.12 1.13 define_pd_global(bool, ConvertSleepToYield, true); 1.14 -define_pd_global(bool, ShareVtableStubs, false); // Improves performance markedly for mtrt and compress. 1.15 define_pd_global(bool, NeedsDeoptSuspend, false); // Only register window machines need this. 1.16 1.17 - 1.18 define_pd_global(bool, ImplicitNullChecks, true); // Generate code for implicit null checks. 1.19 define_pd_global(bool, TrapBasedNullChecks, true); 1.20 define_pd_global(bool, UncommonNullCast, true); // Uncommon-trap NULLs passed to check cast.
2.1 --- a/src/cpu/sparc/vm/c1_FrameMap_sparc.cpp Mon Feb 17 09:41:42 2020 +0000 2.2 +++ b/src/cpu/sparc/vm/c1_FrameMap_sparc.cpp Thu Feb 20 03:10:15 2020 +0000 2.3 @@ -55,6 +55,8 @@ 2.4 opr = as_oop_opr(reg); 2.5 } else if (type == T_METADATA) { 2.6 opr = as_metadata_opr(reg); 2.7 + } else if (type == T_ADDRESS) { 2.8 + opr = as_address_opr(reg); 2.9 } else { 2.10 opr = as_opr(reg); 2.11 }
3.1 --- a/src/cpu/sparc/vm/globals_sparc.hpp Mon Feb 17 09:41:42 2020 +0000 3.2 +++ b/src/cpu/sparc/vm/globals_sparc.hpp Thu Feb 20 03:10:15 2020 +0000 3.3 @@ -1,5 +1,5 @@ 3.4 /* 3.5 - * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. 3.6 + * Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. 3.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3.8 * 3.9 * This code is free software; you can redistribute it and/or modify it 3.10 @@ -38,7 +38,6 @@ 3.11 // according to the prior table. So, we let the thread continue and let it block by itself. 3.12 define_pd_global(bool, DontYieldALot, true); // yield no more than 100 times per second 3.13 define_pd_global(bool, ConvertSleepToYield, false); // do not convert sleep(0) to yield. Helps GUI 3.14 -define_pd_global(bool, ShareVtableStubs, false); // improves performance markedly for mtrt and compress 3.15 define_pd_global(bool, CountInterpCalls, false); // not implemented in the interpreter 3.16 define_pd_global(bool, NeedsDeoptSuspend, true); // register window machines need this 3.17
4.1 --- a/src/cpu/x86/vm/c1_FrameMap_x86.cpp Mon Feb 17 09:41:42 2020 +0000 4.2 +++ b/src/cpu/x86/vm/c1_FrameMap_x86.cpp Thu Feb 20 03:10:15 2020 +0000 4.3 @@ -54,6 +54,8 @@ 4.4 opr = as_oop_opr(reg); 4.5 } else if (type == T_METADATA) { 4.6 opr = as_metadata_opr(reg); 4.7 + } else if (type == T_ADDRESS) { 4.8 + opr = as_address_opr(reg); 4.9 } else { 4.10 opr = as_opr(reg); 4.11 }
5.1 --- a/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Mon Feb 17 09:41:42 2020 +0000 5.2 +++ b/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp Thu Feb 20 03:10:15 2020 +0000 5.3 @@ -964,7 +964,7 @@ 5.4 if (type == T_OBJECT || type == T_ARRAY) { 5.5 __ verify_oop(src->as_register()); 5.6 __ movptr (dst, src->as_register()); 5.7 - } else if (type == T_METADATA) { 5.8 + } else if (type == T_METADATA || type == T_ADDRESS) { 5.9 __ movptr (dst, src->as_register()); 5.10 } else { 5.11 __ movl (dst, src->as_register()); 5.12 @@ -1145,7 +1145,7 @@ 5.13 if (type == T_ARRAY || type == T_OBJECT) { 5.14 __ movptr(dest->as_register(), frame_map()->address_for_slot(src->single_stack_ix())); 5.15 __ verify_oop(dest->as_register()); 5.16 - } else if (type == T_METADATA) { 5.17 + } else if (type == T_METADATA || type == T_ADDRESS) { 5.18 __ movptr(dest->as_register(), frame_map()->address_for_slot(src->single_stack_ix())); 5.19 } else { 5.20 __ movl(dest->as_register(), frame_map()->address_for_slot(src->single_stack_ix()));
6.1 --- a/src/cpu/x86/vm/globals_x86.hpp Mon Feb 17 09:41:42 2020 +0000 6.2 +++ b/src/cpu/x86/vm/globals_x86.hpp Thu Feb 20 03:10:15 2020 +0000 6.3 @@ -1,5 +1,5 @@ 6.4 /* 6.5 - * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. 6.6 + * Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. 6.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 6.8 * 6.9 * This code is free software; you can redistribute it and/or modify it 6.10 @@ -32,7 +32,6 @@ 6.11 // (see globals.hpp) 6.12 6.13 define_pd_global(bool, ConvertSleepToYield, true); 6.14 -define_pd_global(bool, ShareVtableStubs, true); 6.15 define_pd_global(bool, CountInterpCalls, true); 6.16 define_pd_global(bool, NeedsDeoptSuspend, false); // only register window machines need this 6.17
7.1 --- a/src/cpu/zero/vm/globals_zero.hpp Mon Feb 17 09:41:42 2020 +0000 7.2 +++ b/src/cpu/zero/vm/globals_zero.hpp Thu Feb 20 03:10:15 2020 +0000 7.3 @@ -1,5 +1,5 @@ 7.4 /* 7.5 - * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. 7.6 + * Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. 7.7 * Copyright 2007, 2008, 2009, 2010, 2011 Red Hat, Inc. 7.8 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 7.9 * 7.10 @@ -33,7 +33,6 @@ 7.11 // runtime system. See globals.hpp for details of what they do. 7.12 7.13 define_pd_global(bool, ConvertSleepToYield, true); 7.14 -define_pd_global(bool, ShareVtableStubs, true); 7.15 define_pd_global(bool, CountInterpCalls, true); 7.16 define_pd_global(bool, NeedsDeoptSuspend, false); 7.17
8.1 --- a/src/share/vm/c1/c1_FrameMap.hpp Mon Feb 17 09:41:42 2020 +0000 8.2 +++ b/src/share/vm/c1/c1_FrameMap.hpp Thu Feb 20 03:10:15 2020 +0000 8.3 @@ -198,6 +198,10 @@ 8.4 return LIR_OprFact::single_cpu_metadata(cpu_reg2rnr(r)); 8.5 } 8.6 8.7 + static LIR_Opr as_address_opr(Register r) { 8.8 + return LIR_OprFact::single_cpu_address(cpu_reg2rnr(r)); 8.9 + } 8.10 + 8.11 FrameMap(ciMethod* method, int monitors, int reserved_argument_area_size); 8.12 bool finalize_frame(int nof_slots); 8.13
9.1 --- a/src/share/vm/code/vtableStubs.cpp Mon Feb 17 09:41:42 2020 +0000 9.2 +++ b/src/share/vm/code/vtableStubs.cpp Thu Feb 20 03:10:15 2020 +0000 9.3 @@ -1,5 +1,5 @@ 9.4 /* 9.5 - * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved. 9.6 + * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved. 9.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9.8 * 9.9 * This code is free software; you can redistribute it and/or modify it 9.10 @@ -110,7 +110,7 @@ 9.11 address VtableStubs::find_stub(bool is_vtable_stub, int vtable_index) { 9.12 assert(vtable_index >= 0, "must be positive"); 9.13 9.14 - VtableStub* s = ShareVtableStubs ? lookup(is_vtable_stub, vtable_index) : NULL; 9.15 + VtableStub* s = lookup(is_vtable_stub, vtable_index); 9.16 if (s == NULL) { 9.17 if (is_vtable_stub) { 9.18 s = create_vtable_stub(vtable_index);
10.1 --- a/src/share/vm/runtime/globals.hpp Mon Feb 17 09:41:42 2020 +0000 10.2 +++ b/src/share/vm/runtime/globals.hpp Thu Feb 20 03:10:15 2020 +0000 10.3 @@ -1,5 +1,5 @@ 10.4 /* 10.5 - * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved. 10.6 + * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved. 10.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 10.8 * 10.9 * This code is free software; you can redistribute it and/or modify it 10.10 @@ -1180,9 +1180,6 @@ 10.11 product(bool, ReduceSignalUsage, false, \ 10.12 "Reduce the use of OS signals in Java and/or the VM") \ 10.13 \ 10.14 - develop_pd(bool, ShareVtableStubs, \ 10.15 - "Share vtable stubs (smaller code but worse branch prediction") \ 10.16 - \ 10.17 develop(bool, LoadLineNumberTables, true, \ 10.18 "Tell whether the class file parser loads line number tables") \ 10.19 \
11.1 --- a/src/share/vm/runtime/safepoint.hpp Mon Feb 17 09:41:42 2020 +0000 11.2 +++ b/src/share/vm/runtime/safepoint.hpp Thu Feb 20 03:10:15 2020 +0000 11.3 @@ -190,7 +190,7 @@ 11.4 }; 11.5 11.6 // State class for a thread suspended at a safepoint 11.7 -class ThreadSafepointState: public CHeapObj<mtInternal> { 11.8 +class ThreadSafepointState: public CHeapObj<mtThread> { 11.9 public: 11.10 // These states are maintained by VM thread while threads are being brought 11.11 // to a safepoint. After SafepointSynchronize::end(), they are reset to