diff --git a/src/vm/ClrEtwAll.man b/src/vm/ClrEtwAll.man
index 3a3568468cb8..441f0a0c9551 100644
--- a/src/vm/ClrEtwAll.man
+++ b/src/vm/ClrEtwAll.man
@@ -1816,7 +1816,7 @@
-
+
@@ -1837,6 +1837,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ %1
+ %2
+ %3
+ %4
+ %5
+ %6
+ %7
+ %8
+ %9
+ %10
+ %11
+ %12
+
+
+
+
@@ -1880,7 +1912,7 @@
-
+
@@ -1900,6 +1932,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ %1
+ %2
+ %3
+ %4
+ %5
+ %6
+ %7
+ %8
+ %9
+ %10
+ %11
+ %12
+
+
+
@@ -2961,10 +3025,10 @@
symbol="MethodJitInliningSucceeded"
message="$(string.RuntimePublisher.MethodJitInliningSucceededEventMessage)"/>
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -6017,11 +6105,11 @@
task="GarbageCollectionPrivate"
symbol="PrvFinalizeObject" message="$(string.PrivatePublisher.FinalizeObjectEventMessage)"/>
-
+ symbol="CCWRefCountChangeAnsi" message="$(string.PrivatePublisher.CCWRefCountChangeEventMessage)"/>
+
+
diff --git a/src/vm/comcallablewrapper.cpp b/src/vm/comcallablewrapper.cpp
index 5c2e1876e1cf..ad6240580bec 100644
--- a/src/vm/comcallablewrapper.cpp
+++ b/src/vm/comcallablewrapper.cpp
@@ -958,13 +958,20 @@ void SimpleComCallWrapper::BuildRefCountLogMessage(LPCWSTR wszOperation, StackSS
obj = *((_UNCHECKED_OBJECTREF *)(handle));
if (ETW_EVENT_ENABLED(MICROSOFT_WINDOWS_DOTNETRUNTIME_PRIVATE_PROVIDER_Context, CCWRefCountChange))
+ {
+ SString className;
+ className.SetUTF8(pszClassName);
+ SString nameSpace;
+ nameSpace.SetUTF8(pszNamespace);
+
FireEtwCCWRefCountChange(
handle,
(Object *)obj,
this,
dwEstimatedRefCount,
NULL, // domain value is not interesting in CoreCLR
- pszClassName, pszNamespace, wszOperation, GetClrInstanceId());
+ className.GetUnicode(), nameSpace.GetUnicode(), wszOperation, GetClrInstanceId());
+ }
if (g_pConfig->ShouldLogCCWRefCountChange(pszClassName, pszNamespace))
{
diff --git a/src/vm/jitinterface.cpp b/src/vm/jitinterface.cpp
index a45da2d4fb95..99fa53d763d2 100644
--- a/src/vm/jitinterface.cpp
+++ b/src/vm/jitinterface.cpp
@@ -8040,6 +8040,9 @@ void CEEInfo::reportInliningDecision (CORINFO_METHOD_HANDLE inlinerHnd,
if (dontInline(inlineResult))
{
const char * str = (reason ? reason : "");
+ SString strReason;
+ strReason.SetANSI(str);
+
FireEtwMethodJitInliningFailed(methodBeingCompiledNames[0].GetUnicode(),
methodBeingCompiledNames[1].GetUnicode(),
@@ -8051,7 +8054,7 @@ void CEEInfo::reportInliningDecision (CORINFO_METHOD_HANDLE inlinerHnd,
inlineeNames[1].GetUnicode(),
inlineeNames[2].GetUnicode(),
inlineResult == INLINE_NEVER,
- str,
+ strReason.GetUnicode(),
GetClrInstanceId());
}
else
@@ -8364,6 +8367,8 @@ void CEEInfo::reportTailCallDecision (CORINFO_METHOD_HANDLE callerHnd,
if (tailCallResult == TAILCALL_FAIL)
{
const char * str = (reason ? reason : "");
+ SString strReason;
+ strReason.SetANSI(str);
FireEtwMethodJitTailCallFailed(methodBeingCompiledNames[0].GetUnicode(),
methodBeingCompiledNames[1].GetUnicode(),
@@ -8375,7 +8380,7 @@ void CEEInfo::reportTailCallDecision (CORINFO_METHOD_HANDLE callerHnd,
calleeNames[1].GetUnicode(),
calleeNames[2].GetUnicode(),
fIsTailPrefix,
- str,
+ strReason.GetUnicode(),
GetClrInstanceId());
}
else