Skip to content

Commit 32231c6

Browse files
[Automated] Merge in tag jdk-24+6
PullRequest: labsjdk-ce/95
2 parents ca1e721 + d206bfd commit 32231c6

File tree

379 files changed

+7411
-3690
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

379 files changed

+7411
-3690
lines changed

doc/ide.html

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,12 @@ <h5 id="alternative-indexers">Alternative indexers</h5>
6363
<p>The main <code>vscode-project</code> target configures the default
6464
C++ support in Visual Studio Code. There are also other source indexers
6565
that can be installed, that may provide additional features. It's
66-
currently possible to generate configuration for two such indexers, <a
67-
href="https://clang.llvm.org/extra/clangd/">clangd</a> and <a
68-
href="https://github.com/Andersbakken/rtags">rtags</a>. These can be
69-
configured by appending the name of the indexer to the make target, such
70-
as:</p>
66+
currently possible to generate configuration for three such indexers, <a
67+
href="https://clang.llvm.org/extra/clangd/">clangd</a>, <a
68+
href="https://github.com/MaskRay/ccls/wiki/Visual-Studio-Code">ccls</a>
69+
and <a href="https://github.com/Andersbakken/rtags">rtags</a>. These can
70+
be configured by appending the name of the indexer to the make target,
71+
such as:</p>
7172
<pre class="shell"><code>make vscode-project-clangd</code></pre>
7273
<p>Additional instructions for configuring the given indexer will be
7374
displayed after the workspace has been generated.</p>

doc/ide.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@ choose `File -> Open Workspace...` in Visual Studio Code.
3232
The main `vscode-project` target configures the default C++ support in Visual
3333
Studio Code. There are also other source indexers that can be installed, that
3434
may provide additional features. It's currently possible to generate
35-
configuration for two such indexers, [clangd](https://clang.llvm.org/extra/clangd/)
35+
configuration for three such indexers, [clangd](https://clang.llvm.org/extra/clangd/),
36+
[ccls](https://github.com/MaskRay/ccls/wiki/Visual-Studio-Code)
3637
and [rtags](https://github.com/Andersbakken/rtags). These can be configured by
3738
appending the name of the indexer to the make target, such as:
3839

make/modules/jdk.jdeps/Launcher.gmk

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,3 +51,12 @@ $(eval $(call SetupBuildLauncher, jdeprscan, \
5151
MAIN_CLASS := com.sun.tools.jdeprscan.Main, \
5252
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
5353
))
54+
55+
################################################################################
56+
## Build jnativescan
57+
################################################################################
58+
59+
$(eval $(call SetupBuildLauncher, jnativescan, \
60+
MAIN_CLASS := com.sun.tools.jnativescan.Main, \
61+
CFLAGS := -DEXPAND_CLASSPATH_WILDCARDS, \
62+
))

make/src/classes/build/tools/jfr/GenerateJfrFiles.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -668,7 +668,7 @@ private static void printJfrEventControlHpp(Metadata metadata, File outputFile)
668668
out.write(" // add named struct members also.");
669669
out.write(" struct {");
670670
out.write(" jfrNativeEventSetting pad[NUMBER_OF_RESERVED_EVENTS];");
671-
for (TypeElement t : metadata.getEventsAndStructs()) {
671+
for (TypeElement t : metadata.getEvents()) {
672672
out.write(" jfrNativeEventSetting " + t.name + ";");
673673
}
674674
out.write(" } ev;");

src/hotspot/cpu/aarch64/c2_MacroAssembler_aarch64.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1154,7 +1154,7 @@ void C2_MacroAssembler::string_compare(Register str1, Register str2,
11541154

11551155
BLOCK_COMMENT("string_compare {");
11561156

1157-
// Bizzarely, the counts are passed in bytes, regardless of whether they
1157+
// Bizarrely, the counts are passed in bytes, regardless of whether they
11581158
// are L or U strings, however the result is always in characters.
11591159
if (!str1_isL) asrw(cnt1, cnt1, 1);
11601160
if (!str2_isL) asrw(cnt2, cnt2, 1);

src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1418,8 +1418,7 @@ void InterpreterMacroAssembler::notify_method_entry() {
14181418
bind(L);
14191419
}
14201420

1421-
{
1422-
SkipIfEqual skip(this, &DTraceMethodProbes, false);
1421+
if (DTraceMethodProbes) {
14231422
get_method(c_rarg1);
14241423
call_VM_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_entry),
14251424
rthread, c_rarg1);
@@ -1458,8 +1457,7 @@ void InterpreterMacroAssembler::notify_method_exit(
14581457
pop(state);
14591458
}
14601459

1461-
{
1462-
SkipIfEqual skip(this, &DTraceMethodProbes, false);
1460+
if (DTraceMethodProbes) {
14631461
push(state);
14641462
get_method(c_rarg1);
14651463
call_VM_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit),

src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp

Lines changed: 33 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1754,11 +1754,8 @@ nmethod* SharedRuntime::generate_native_wrapper(MacroAssembler* masm,
17541754
__ set_last_Java_frame(sp, noreg, native_return, rscratch1);
17551755

17561756
Label dtrace_method_entry, dtrace_method_entry_done;
1757-
{
1758-
uint64_t offset;
1759-
__ adrp(rscratch1, ExternalAddress((address)&DTraceMethodProbes), offset);
1760-
__ ldrb(rscratch1, Address(rscratch1, offset));
1761-
__ cbnzw(rscratch1, dtrace_method_entry);
1757+
if (DTraceMethodProbes) {
1758+
__ b(dtrace_method_entry);
17621759
__ bind(dtrace_method_entry_done);
17631760
}
17641761

@@ -1990,11 +1987,8 @@ nmethod* SharedRuntime::generate_native_wrapper(MacroAssembler* masm,
19901987
}
19911988

19921989
Label dtrace_method_exit, dtrace_method_exit_done;
1993-
{
1994-
uint64_t offset;
1995-
__ adrp(rscratch1, ExternalAddress((address)&DTraceMethodProbes), offset);
1996-
__ ldrb(rscratch1, Address(rscratch1, offset));
1997-
__ cbnzw(rscratch1, dtrace_method_exit);
1990+
if (DTraceMethodProbes) {
1991+
__ b(dtrace_method_exit);
19981992
__ bind(dtrace_method_exit_done);
19991993
}
20001994

@@ -2138,37 +2132,38 @@ nmethod* SharedRuntime::generate_native_wrapper(MacroAssembler* masm,
21382132
}
21392133

21402134
// SLOW PATH dtrace support
2141-
{
2142-
__ block_comment("dtrace entry {");
2143-
__ bind(dtrace_method_entry);
2144-
2145-
// We have all of the arguments setup at this point. We must not touch any register
2146-
// argument registers at this point (what if we save/restore them there are no oop?
2147-
2148-
save_args(masm, total_c_args, c_arg, out_regs);
2149-
__ mov_metadata(c_rarg1, method());
2150-
__ call_VM_leaf(
2151-
CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_entry),
2152-
rthread, c_rarg1);
2153-
restore_args(masm, total_c_args, c_arg, out_regs);
2154-
__ b(dtrace_method_entry_done);
2155-
__ block_comment("} dtrace entry");
2156-
}
2135+
if (DTraceMethodProbes) {
2136+
{
2137+
__ block_comment("dtrace entry {");
2138+
__ bind(dtrace_method_entry);
2139+
2140+
// We have all of the arguments setup at this point. We must not touch any register
2141+
// argument registers at this point (what if we save/restore them there are no oop?
2142+
2143+
save_args(masm, total_c_args, c_arg, out_regs);
2144+
__ mov_metadata(c_rarg1, method());
2145+
__ call_VM_leaf(
2146+
CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_entry),
2147+
rthread, c_rarg1);
2148+
restore_args(masm, total_c_args, c_arg, out_regs);
2149+
__ b(dtrace_method_entry_done);
2150+
__ block_comment("} dtrace entry");
2151+
}
21572152

2158-
{
2159-
__ block_comment("dtrace exit {");
2160-
__ bind(dtrace_method_exit);
2161-
save_native_result(masm, ret_type, stack_slots);
2162-
__ mov_metadata(c_rarg1, method());
2163-
__ call_VM_leaf(
2164-
CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit),
2165-
rthread, c_rarg1);
2166-
restore_native_result(masm, ret_type, stack_slots);
2167-
__ b(dtrace_method_exit_done);
2168-
__ block_comment("} dtrace exit");
2153+
{
2154+
__ block_comment("dtrace exit {");
2155+
__ bind(dtrace_method_exit);
2156+
save_native_result(masm, ret_type, stack_slots);
2157+
__ mov_metadata(c_rarg1, method());
2158+
__ call_VM_leaf(
2159+
CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit),
2160+
rthread, c_rarg1);
2161+
restore_native_result(masm, ret_type, stack_slots);
2162+
__ b(dtrace_method_exit_done);
2163+
__ block_comment("} dtrace exit");
2164+
}
21692165
}
21702166

2171-
21722167
__ flush();
21732168

21742169
nmethod *nm = nmethod::new_native_nmethod(method,

src/hotspot/cpu/aarch64/templateTable_aarch64.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3648,8 +3648,7 @@ void TemplateTable::_new() {
36483648
__ store_klass_gap(r0, zr); // zero klass gap for compressed oops
36493649
__ store_klass(r0, r4); // store klass last
36503650

3651-
{
3652-
SkipIfEqual skip(_masm, &DTraceAllocProbes, false);
3651+
if (DTraceAllocProbes) {
36533652
// Trigger dtrace event for fastpath
36543653
__ push(atos); // save the return value
36553654
__ call_VM_leaf(

src/hotspot/cpu/arm/c1_LIRAssembler_arm.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,8 +152,14 @@ void LIR_Assembler::osr_entry() {
152152
int monitor_offset = (method()->max_locals() + 2 * (number_of_locks - 1)) * BytesPerWord;
153153
for (int i = 0; i < number_of_locks; i++) {
154154
int slot_offset = monitor_offset - (i * 2 * BytesPerWord);
155-
__ ldr(R1, Address(OSR_buf, slot_offset + 0*BytesPerWord));
156-
__ ldr(R2, Address(OSR_buf, slot_offset + 1*BytesPerWord));
155+
if (slot_offset >= 4096 - BytesPerWord) {
156+
__ add_slow(R2, OSR_buf, slot_offset);
157+
__ ldr(R1, Address(R2, 0*BytesPerWord));
158+
__ ldr(R2, Address(R2, 1*BytesPerWord));
159+
} else {
160+
__ ldr(R1, Address(OSR_buf, slot_offset + 0*BytesPerWord));
161+
__ ldr(R2, Address(OSR_buf, slot_offset + 1*BytesPerWord));
162+
}
157163
__ str(R1, frame_map()->address_for_monitor_lock(i));
158164
__ str(R2, frame_map()->address_for_monitor_object(i));
159165
}

src/hotspot/cpu/ppc/templateTable_ppc_64.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3859,10 +3859,11 @@ void TemplateTable::_new() {
38593859
__ store_klass(RallocatedObject, RinstanceKlass, Rscratch); // klass (last for cms)
38603860

38613861
// Check and trigger dtrace event.
3862-
SkipIfEqualZero::skip_to_label_if_equal_zero(_masm, Rscratch, &DTraceAllocProbes, Ldone);
3863-
__ push(atos);
3864-
__ call_VM_leaf(CAST_FROM_FN_PTR(address, static_cast<int (*)(oopDesc*)>(SharedRuntime::dtrace_object_alloc)));
3865-
__ pop(atos);
3862+
if (DTraceAllocProbes) {
3863+
__ push(atos);
3864+
__ call_VM_leaf(CAST_FROM_FN_PTR(address, static_cast<int (*)(oopDesc*)>(SharedRuntime::dtrace_object_alloc)));
3865+
__ pop(atos);
3866+
}
38663867

38673868
__ b(Ldone);
38683869
}

0 commit comments

Comments
 (0)