Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 8bd47ff

Browse files
author
Dart CI
committed
Version 2.16.0-151.0.dev
Merge commit 'bd460ca60577ffd1ac91c095df500b75dcc0bace' into 'dev'
2 parents 1379f8a + bd460ca commit 8bd47ff

File tree

15 files changed

+90
-134
lines changed

15 files changed

+90
-134
lines changed

pkg/front_end/lib/src/fasta/builder/class_builder.dart

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ import 'package:kernel/type_algebra.dart' show Substitution, substitute;
3131
import 'package:kernel/type_environment.dart'
3232
show SubtypeCheckMode, TypeEnvironment;
3333

34-
import '../dill/dill_member_builder.dart';
3534
import '../fasta_codes.dart';
3635
import '../kernel/kernel_helper.dart';
3736
import '../kernel/redirecting_factory_body.dart' show RedirectingFactoryBody;
@@ -877,28 +876,6 @@ abstract class ClassBuilderImpl extends DeclarationBuilderImpl
877876
if (targetBuilder == null) return null;
878877
if (targetBuilder is FunctionBuilder) {
879878
targetNode = targetBuilder.function;
880-
} else if (targetBuilder is DillConstructorBuilder) {
881-
// It seems that the [redirectionTarget.target] is an instance of
882-
// [DillMemberBuilder] whenever the redirectee is an implicit constructor,
883-
// e.g.
884-
//
885-
// class A {
886-
// factory A() = B;
887-
// }
888-
// class B implements A {}
889-
//
890-
targetNode = targetBuilder.constructor.function;
891-
} else if (targetBuilder is DillFactoryBuilder) {
892-
// It seems that the [redirectionTarget.target] is an instance of
893-
// [DillMemberBuilder] whenever the redirectee is an implicit constructor,
894-
// e.g.
895-
//
896-
// class A {
897-
// factory A() = B;
898-
// }
899-
// class B implements A {}
900-
//
901-
targetNode = targetBuilder.procedure.function;
902879
} else if (targetBuilder is AmbiguousBuilder) {
903880
// Multiple definitions with the same name: An error has already been
904881
// issued.

pkg/front_end/lib/src/fasta/builder/procedure_builder.dart

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -7,26 +7,8 @@ import 'package:kernel/ast.dart';
77
import 'function_builder.dart';
88

99
abstract class ProcedureBuilder implements FunctionBuilder {
10-
int get charOpenParenOffset;
11-
12-
ProcedureBuilder? get patchForTesting;
13-
14-
AsyncMarker get actualAsyncModifier;
15-
1610
Procedure get procedure;
1711

1812
@override
1913
ProcedureKind get kind;
20-
21-
Procedure get actualProcedure;
22-
23-
@override
24-
ProcedureBuilder get origin;
25-
26-
void set asyncModifier(AsyncMarker newModifier);
27-
28-
bool get isEligibleForTopLevelInference;
29-
30-
/// Returns `true` if this procedure is declared in an extension declaration.
31-
bool get isExtensionMethod;
3214
}

pkg/front_end/lib/src/fasta/dill/dill_member_builder.dart

Lines changed: 24 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import '../builder/builder.dart';
1111
import '../builder/constructor_builder.dart';
1212
import '../builder/member_builder.dart';
1313

14+
import '../builder/procedure_builder.dart';
1415
import '../kernel/hierarchy/class_member.dart' show ClassMember;
1516
import '../kernel/hierarchy/members_builder.dart' show ClassMembersBuilder;
1617
import '../kernel/member_covariance.dart';
@@ -64,12 +65,6 @@ abstract class DillMemberBuilder extends MemberBuilderImpl {
6465
@override
6566
bool get isFactory => identical(ProcedureKind.Factory, kind);
6667

67-
/*@override
68-
bool get isRedirectingGenerativeConstructor {
69-
return isConstructor &&
70-
isRedirectingGenerativeConstructorImplementation(member as Constructor);
71-
}*/
72-
7368
@override
7469
bool get isSynthetic {
7570
final Member member = this.member;
@@ -79,12 +74,6 @@ abstract class DillMemberBuilder extends MemberBuilderImpl {
7974
@override
8075
bool get isAssignable => false;
8176

82-
/*@override
83-
void buildMembers(
84-
LibraryBuilder library, void Function(Member, BuiltMemberKind) f) {
85-
throw new UnsupportedError('DillMemberBuilder.buildMembers');
86-
}*/
87-
8877
List<ClassMember>? _localMembers;
8978
List<ClassMember>? _localSetters;
9079

@@ -124,10 +113,23 @@ class DillFieldBuilder extends DillMemberBuilder {
124113
bool get isAssignable => field.hasSetter;
125114
}
126115

127-
class DillGetterBuilder extends DillMemberBuilder {
116+
abstract class DillProcedureBuilder extends DillMemberBuilder
117+
implements ProcedureBuilder {
118+
@override
128119
final Procedure procedure;
129120

130-
DillGetterBuilder(this.procedure, Builder parent)
121+
DillProcedureBuilder(this.procedure, Builder parent)
122+
: super(procedure, parent);
123+
124+
@override
125+
ProcedureKind get kind => procedure.kind;
126+
127+
@override
128+
FunctionNode get function => procedure.function;
129+
}
130+
131+
class DillGetterBuilder extends DillProcedureBuilder {
132+
DillGetterBuilder(Procedure procedure, Builder parent)
131133
: assert(procedure.kind == ProcedureKind.Getter),
132134
super(procedure, parent);
133135

@@ -144,10 +146,8 @@ class DillGetterBuilder extends DillMemberBuilder {
144146
Member get invokeTarget => procedure;
145147
}
146148

147-
class DillSetterBuilder extends DillMemberBuilder {
148-
final Procedure procedure;
149-
150-
DillSetterBuilder(this.procedure, Builder parent)
149+
class DillSetterBuilder extends DillProcedureBuilder {
150+
DillSetterBuilder(Procedure procedure, Builder parent)
151151
: assert(procedure.kind == ProcedureKind.Setter),
152152
super(procedure, parent);
153153

@@ -164,10 +164,8 @@ class DillSetterBuilder extends DillMemberBuilder {
164164
Member? get invokeTarget => null;
165165
}
166166

167-
class DillMethodBuilder extends DillMemberBuilder {
168-
final Procedure procedure;
169-
170-
DillMethodBuilder(this.procedure, Builder parent)
167+
class DillMethodBuilder extends DillProcedureBuilder {
168+
DillMethodBuilder(Procedure procedure, Builder parent)
171169
: assert(procedure.kind == ProcedureKind.Method),
172170
super(procedure, parent);
173171

@@ -184,10 +182,8 @@ class DillMethodBuilder extends DillMemberBuilder {
184182
Member get invokeTarget => procedure;
185183
}
186184

187-
class DillOperatorBuilder extends DillMemberBuilder {
188-
final Procedure procedure;
189-
190-
DillOperatorBuilder(this.procedure, Builder parent)
185+
class DillOperatorBuilder extends DillProcedureBuilder {
186+
DillOperatorBuilder(Procedure procedure, Builder parent)
191187
: assert(procedure.kind == ProcedureKind.Operator),
192188
super(procedure, parent);
193189

@@ -204,11 +200,10 @@ class DillOperatorBuilder extends DillMemberBuilder {
204200
Member get invokeTarget => procedure;
205201
}
206202

207-
class DillFactoryBuilder extends DillMemberBuilder {
208-
final Procedure procedure;
203+
class DillFactoryBuilder extends DillProcedureBuilder {
209204
final Procedure? _factoryTearOff;
210205

211-
DillFactoryBuilder(this.procedure, this._factoryTearOff, Builder parent)
206+
DillFactoryBuilder(Procedure procedure, this._factoryTearOff, Builder parent)
212207
: super(procedure, parent);
213208

214209
@override

pkg/front_end/lib/src/fasta/kernel/kernel_target.dart

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ import '../builder/type_variable_builder.dart';
4040
import '../builder/void_type_declaration_builder.dart';
4141
import '../compiler_context.dart' show CompilerContext;
4242
import '../crash.dart' show withCrashReporting;
43-
import '../dill/dill_member_builder.dart' show DillMemberBuilder;
4443
import '../dill/dill_target.dart' show DillTarget;
4544
import '../kernel/constructor_tearoff_lowering.dart';
4645
import '../loader.dart' show Loader;
@@ -517,11 +516,7 @@ class KernelTarget extends TargetImplementation {
517516
declaration = problem.getFirstDeclaration();
518517
}
519518
if (declaration is ProcedureBuilder) {
520-
mainReference = declaration.actualProcedure.reference;
521-
} else if (declaration is DillMemberBuilder) {
522-
if (declaration.member is Procedure) {
523-
mainReference = declaration.member.reference;
524-
}
519+
mainReference = declaration.procedure.reference;
525520
}
526521
}
527522
component.setMainMethodAndMode(mainReference, true, compiledMode);

pkg/front_end/lib/src/fasta/source/source_class_builder.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -569,7 +569,7 @@ class SourceClassBuilder extends ClassBuilderImpl
569569
} else {
570570
assert(
571571
// This is a synthesized constructor.
572-
builder is DillConstructorBuilder,
572+
builder is SyntheticSourceConstructorBuilder,
573573
"Unexpected constructor: $builder.");
574574
}
575575
}, includeInjectedConstructors: true);

pkg/front_end/lib/src/fasta/source/source_constructor_builder.dart

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -245,8 +245,7 @@ class DeclaredSourceConstructorBuilder extends SourceFunctionBuilderImpl
245245
_hasFormalsInferred = true;
246246
}
247247

248-
/* ConstructorBuilder | DillConstructorBuilder */
249-
Object? _computeSuperTargetBuilder() {
248+
ConstructorBuilder? _computeSuperTargetBuilder() {
250249
Constructor superTarget;
251250
ClassBuilder superclassBuilder;
252251

@@ -280,8 +279,6 @@ class DeclaredSourceConstructorBuilder extends SourceFunctionBuilderImpl
280279
.lookup("", charOffset, library.fileUri);
281280
if (memberBuilder is ConstructorBuilder) {
282281
superTarget = memberBuilder.constructor;
283-
} else if (memberBuilder is DillConstructorBuilder) {
284-
superTarget = memberBuilder.constructor;
285282
} else {
286283
// The error in this case should be reported elsewhere.
287284
return null;
@@ -291,10 +288,7 @@ class DeclaredSourceConstructorBuilder extends SourceFunctionBuilderImpl
291288
MemberBuilder? constructorBuilder =
292289
superclassBuilder.findConstructorOrFactory(
293290
superTarget.name.text, charOffset, library.fileUri, library);
294-
return constructorBuilder is ConstructorBuilder ||
295-
constructorBuilder is DillConstructorBuilder
296-
? constructorBuilder
297-
: null;
291+
return constructorBuilder is ConstructorBuilder ? constructorBuilder : null;
298292
}
299293

300294
void finalizeSuperInitializingFormals(ClassHierarchy classHierarchy,
@@ -310,7 +304,7 @@ class DeclaredSourceConstructorBuilder extends SourceFunctionBuilderImpl
310304
}
311305
}
312306

313-
Object? superTargetBuilder = _computeSuperTargetBuilder();
307+
ConstructorBuilder? superTargetBuilder = _computeSuperTargetBuilder();
314308
Constructor superTarget;
315309
List<FormalParameterBuilder>? superFormals;
316310
if (superTargetBuilder is DeclaredSourceConstructorBuilder) {
@@ -459,7 +453,7 @@ class DeclaredSourceConstructorBuilder extends SourceFunctionBuilderImpl
459453

460454
void addSuperParameterDefaultValueCloners(
461455
List<SynthesizedFunctionNode> synthesizedFunctionNodes) {
462-
Object? superTargetBuilder = _computeSuperTargetBuilder();
456+
ConstructorBuilder? superTargetBuilder = _computeSuperTargetBuilder();
463457
if (superTargetBuilder is DeclaredSourceConstructorBuilder) {
464458
superTargetBuilder
465459
.addSuperParameterDefaultValueCloners(synthesizedFunctionNodes);

pkg/front_end/lib/src/fasta/source/source_procedure_builder.dart

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,8 @@ import 'source_member_builder.dart';
2424

2525
class SourceProcedureBuilder extends SourceFunctionBuilderImpl
2626
implements ProcedureBuilder {
27-
@override
2827
final int charOpenParenOffset;
2928

30-
@override
3129
AsyncMarker actualAsyncModifier = AsyncMarker.Sync;
3230

3331
@override
@@ -106,7 +104,6 @@ class SourceProcedureBuilder extends SourceFunctionBuilderImpl
106104
}
107105
}
108106

109-
@override
110107
ProcedureBuilder? get patchForTesting =>
111108
dataForTesting?.patchForTesting as ProcedureBuilder?;
112109

@@ -121,14 +118,12 @@ class SourceProcedureBuilder extends SourceFunctionBuilderImpl
121118
return bodyInternal;
122119
}
123120

124-
@override
125121
void set asyncModifier(AsyncMarker newModifier) {
126122
actualAsyncModifier = newModifier;
127123
function.asyncMarker = actualAsyncModifier;
128124
function.dartAsyncMarker = actualAsyncModifier;
129125
}
130126

131-
@override
132127
bool get isEligibleForTopLevelInference {
133128
if (isDeclarationInstanceMember) {
134129
if (returnType == null) return true;
@@ -141,7 +136,6 @@ class SourceProcedureBuilder extends SourceFunctionBuilderImpl
141136
return false;
142137
}
143138

144-
@override
145139
bool get isExtensionMethod {
146140
return parent is ExtensionBuilder;
147141
}
@@ -155,7 +149,6 @@ class SourceProcedureBuilder extends SourceFunctionBuilderImpl
155149
@override
156150
Procedure get procedure => isPatch ? origin.procedure : _procedure;
157151

158-
@override
159152
Procedure get actualProcedure => _procedure;
160153

161154
@override

runtime/platform/globals.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -653,7 +653,7 @@ static inline void USE(T&&) {}
653653
// gcc enough that it can no longer see that you have cast one pointer
654654
// type to another thus avoiding the warning.
655655
template <class D, class S>
656-
inline D bit_cast(const S& source) {
656+
DART_FORCE_INLINE D bit_cast(const S& source) {
657657
static_assert(sizeof(D) == sizeof(S),
658658
"Source and destination must have the same size");
659659

@@ -669,7 +669,7 @@ inline D bit_cast(const S& source) {
669669
// obscure details in the C++ standard that make reinterpret_cast
670670
// virtually useless.
671671
template <class D, class S>
672-
inline D bit_copy(const S& source) {
672+
DART_FORCE_INLINE D bit_copy(const S& source) {
673673
D destination;
674674
// This use of memcpy is safe: source and destination cannot overlap.
675675
memcpy(&destination, reinterpret_cast<const void*>(&source),

runtime/vm/app_snapshot.cc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2820,7 +2820,7 @@ class CompressedStackMapsSerializationCluster : public SerializationCluster {
28202820
s->AssignRef(map);
28212821
AutoTraceObject(map);
28222822
const intptr_t length = UntaggedCompressedStackMaps::SizeField::decode(
2823-
map->untag()->payload()->flags_and_size);
2823+
map->untag()->payload()->flags_and_size());
28242824
s->WriteUnsigned(length);
28252825
target_memory_size_ +=
28262826
compiler::target::CompressedStackMaps::InstanceSize(length);
@@ -2832,9 +2832,9 @@ class CompressedStackMapsSerializationCluster : public SerializationCluster {
28322832
for (intptr_t i = 0; i < count; i++) {
28332833
CompressedStackMapsPtr map = objects_[i];
28342834
AutoTraceObject(map);
2835-
s->WriteUnsigned(map->untag()->payload()->flags_and_size);
2835+
s->WriteUnsigned(map->untag()->payload()->flags_and_size());
28362836
const intptr_t length = UntaggedCompressedStackMaps::SizeField::decode(
2837-
map->untag()->payload()->flags_and_size);
2837+
map->untag()->payload()->flags_and_size());
28382838
uint8_t* cdata =
28392839
reinterpret_cast<uint8_t*>(map->untag()->payload()->data());
28402840
s->WriteBytes(cdata, length);
@@ -2874,7 +2874,7 @@ class CompressedStackMapsDeserializationCluster
28742874
static_cast<CompressedStackMapsPtr>(d->Ref(id));
28752875
Deserializer::InitializeHeader(map, kCompressedStackMapsCid,
28762876
CompressedStackMaps::InstanceSize(length));
2877-
map->untag()->payload()->flags_and_size = flags_and_size;
2877+
map->untag()->payload()->set_flags_and_size(flags_and_size);
28782878
uint8_t* cdata =
28792879
reinterpret_cast<uint8_t*>(map->untag()->payload()->data());
28802880
d->ReadBytes(cdata, length);
@@ -6978,7 +6978,7 @@ void Serializer::PrepareInstructions(
69786978

69796979
// Now write collected stack maps after the binary search table.
69806980
auto write_stack_map = [&](CompressedStackMapsPtr smap) {
6981-
const auto flags_and_size = smap->untag()->payload()->flags_and_size;
6981+
const auto flags_and_size = smap->untag()->payload()->flags_and_size();
69826982
const auto payload_size =
69836983
UntaggedCompressedStackMaps::SizeField::decode(flags_and_size);
69846984
pc_mapping.WriteFixed<uint32_t>(flags_and_size);

runtime/vm/compiler/runtime_offsets_list.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -350,7 +350,7 @@
350350
SIZEOF(CodeSourceMap, HeaderSize, UntaggedCodeSourceMap) \
351351
SIZEOF(CompressedStackMaps, ObjectHeaderSize, UntaggedCompressedStackMaps) \
352352
SIZEOF(CompressedStackMaps, PayloadHeaderSize, \
353-
UntaggedCompressedStackMaps::Payload) \
353+
UntaggedCompressedStackMaps::Payload::FlagsAndSizeHeader) \
354354
SIZEOF(Context, header_size, UntaggedContext) \
355355
SIZEOF(Double, InstanceSize, UntaggedDouble) \
356356
SIZEOF(DynamicLibrary, InstanceSize, UntaggedDynamicLibrary) \

0 commit comments

Comments
 (0)