Skip to content

Commit 0ba638f

Browse files
committed
statics now delimited with '::' - packagename_Classname::staticname
1 parent 722534c commit 0ba638f

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

substratevm/src/com.oracle.objectfile/src/com/oracle/objectfile/pecoff/cv/CVSymbolSubsectionBuilder.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ private void build(ClassEntry classEntry) {
100100
final short sectionId = (short) ((PECoffObjectFile.PECoffSection) rwSection).getSectionID();
101101
classEntry.fields().filter(CVSymbolSubsectionBuilder::isManifestedStaticField).forEach(f -> {
102102
int typeIndex = cvDebugInfo.getCVTypeSection().getIndexForPointer(f.getValueType());
103-
String externName = "static$" + classEntry.getTypeName().replace(".", "_") + "_" + f.fieldName();
103+
String externName = memberNameToCodeViewName(classEntry, f);
104104
if (cvDebugInfo.useHeapBase()) {
105105
/* REL32 offset from heap base register. */
106106
addToSymbolSubsection(new CVSymbolSubrecord.CVSymbolRegRel32Record(cvDebugInfo, externName, typeIndex, f.getOffset(), cvDebugInfo.getHeapbaseRegister()));
@@ -115,6 +115,10 @@ private static boolean isManifestedStaticField(FieldEntry fieldEntry) {
115115
return Modifier.isStatic(fieldEntry.getModifiers()) && fieldEntry.getOffset() >= 0;
116116
}
117117

118+
private static String memberNameToCodeViewName(ClassEntry classEntry, FieldEntry fieldEntry) {
119+
return classEntry.getTypeName().replace(".", "_") + "::" + fieldEntry.fieldName();
120+
}
121+
118122
/**
119123
* Emit records for each function: PROC32 S_FRAMEPROC S_END and line number records. (later:
120124
* type records as required).

0 commit comments

Comments
 (0)