| Index: runtime/observatory/lib/src/cpu_profile/cpu_profile.dart
|
| diff --git a/runtime/observatory/lib/src/cpu_profile/cpu_profile.dart b/runtime/observatory/lib/src/cpu_profile/cpu_profile.dart
|
| index c71a41ed77b47492aaec4acb0b287e8e30bbc68a..d3e0252d10cd1d23a640242f1edc3c3573940148 100644
|
| --- a/runtime/observatory/lib/src/cpu_profile/cpu_profile.dart
|
| +++ b/runtime/observatory/lib/src/cpu_profile/cpu_profile.dart
|
| @@ -370,15 +370,22 @@ class ProfileCode {
|
|
|
| code.profile = this;
|
|
|
| - if (code.isDartCode) {
|
| + if (code.kind == CodeKind.Stub) {
|
| + attributes.add('stub');
|
| + } else if (code.kind == CodeKind.Dart) {
|
| + if (code.isNative) {
|
| + attributes.add('ffi'); // Not to be confused with a C function.
|
| + } else {
|
| + attributes.add('dart');
|
| + }
|
| + if (code.hasIntrinsic) {
|
| + attributes.add('intrinsic');
|
| + }
|
| if (code.isOptimized) {
|
| attributes.add('optimized');
|
| } else {
|
| attributes.add('unoptimized');
|
| }
|
| - }
|
| - if (code.isDartCode) {
|
| - attributes.add('dart');
|
| } else if (code.kind == CodeKind.Tag) {
|
| attributes.add('tag');
|
| } else if (code.kind == CodeKind.Native) {
|
| @@ -516,15 +523,19 @@ class ProfileFunction {
|
| if (function.kind == FunctionKind.kTag) {
|
| attribs.add('tag');
|
| } else if (function.kind == FunctionKind.kStub) {
|
| - attribs.add('dart');
|
| attribs.add('stub');
|
| } else if (function.kind == FunctionKind.kNative) {
|
| attribs.add('native');
|
| } else if (function.kind.isSynthetic()) {
|
| attribs.add('synthetic');
|
| + } else if (function.isNative) {
|
| + attribs.add('ffi'); // Not to be confused with a C function.
|
| } else {
|
| attribs.add('dart');
|
| }
|
| + if (function.hasIntrinsic == true) {
|
| + attribs.add('intrinsic');
|
| + }
|
| }
|
|
|
| ProfileFunction.fromMap(this.profile, this.function, Map data) {
|
|
|