Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(982)

Side by Side Diff: runtime/vm/flow_graph_builder_test.cc

Issue 1678203002: Remove more feature in product mode (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/compiler.h" 5 #include "vm/compiler.h"
6 #include "vm/dart_api_impl.h" 6 #include "vm/dart_api_impl.h"
7 #include "vm/dart_entry.h" 7 #include "vm/dart_entry.h"
8 #include "vm/flow_graph_builder.h" 8 #include "vm/flow_graph_builder.h"
9 #include "vm/intermediate_language.h" 9 #include "vm/intermediate_language.h"
10 #include "vm/unit_test.h" 10 #include "vm/unit_test.h"
11 11
12 namespace dart { 12 namespace dart {
13 13
14 #ifndef PRODUCT
15
14 #define DUMP_ASSERT(condition) \ 16 #define DUMP_ASSERT(condition) \
15 if (!(condition)) { \ 17 if (!(condition)) { \
16 dart::Expect(__FILE__, __LINE__).Fail("expected: %s", #condition); \ 18 dart::Expect(__FILE__, __LINE__).Fail("expected: %s", #condition); \
17 THR_Print(">>> BEGIN source position table for `%s`\n", graph_name_); \ 19 THR_Print(">>> BEGIN source position table for `%s`\n", graph_name_); \
18 Dump(); \ 20 Dump(); \
19 THR_Print("<<< END source position table for `%s`\n", graph_name_); \ 21 THR_Print("<<< END source position table for `%s`\n", graph_name_); \
20 OS::Abort(); \ 22 OS::Abort(); \
21 } 23 }
22 24
23 class SourcePositionTest : public ValueObject { 25 class SourcePositionTest : public ValueObject {
(...skipping 748 matching lines...) Expand 10 before | Expand all | Expand 10 after
772 "main() {\n" 774 "main() {\n"
773 " foo(new Future.value(33));\n" 775 " foo(new Future.value(33));\n"
774 "}\n"; 776 "}\n";
775 777
776 SourcePositionTest spt(thread, kScript); 778 SourcePositionTest spt(thread, kScript);
777 spt.BuildGraphFor("foo"); 779 spt.BuildGraphFor("foo");
778 spt.EnsureSourcePositions(); 780 spt.EnsureSourcePositions();
779 spt.Dump(); 781 spt.Dump();
780 } 782 }
781 783
784 #endif // !PRODUCT
782 785
783 static bool SyntheticRoundTripTest(TokenPosition token_pos) { 786 static bool SyntheticRoundTripTest(TokenPosition token_pos) {
784 const TokenPosition synthetic_token_pos = token_pos.ToSynthetic(); 787 const TokenPosition synthetic_token_pos = token_pos.ToSynthetic();
785 return synthetic_token_pos.FromSynthetic() == token_pos; 788 return synthetic_token_pos.FromSynthetic() == token_pos;
786 } 789 }
787 790
788 791
789 UNIT_TEST_CASE(SourcePosition_SyntheticTokens) { 792 UNIT_TEST_CASE(SourcePosition_SyntheticTokens) {
790 EXPECT(TokenPosition::kNoSourcePos == -1); 793 EXPECT(TokenPosition::kNoSourcePos == -1);
791 EXPECT(TokenPosition::kMinSourcePos == 0); 794 EXPECT(TokenPosition::kMinSourcePos == 0);
792 EXPECT(TokenPosition::kMaxSourcePos > 0); 795 EXPECT(TokenPosition::kMaxSourcePos > 0);
793 EXPECT(TokenPosition::kMaxSourcePos > TokenPosition::kMinSourcePos); 796 EXPECT(TokenPosition::kMaxSourcePos > TokenPosition::kMinSourcePos);
794 EXPECT(TokenPosition::kMinSource.value() == TokenPosition::kMinSourcePos); 797 EXPECT(TokenPosition::kMinSource.value() == TokenPosition::kMinSourcePos);
795 EXPECT(TokenPosition::kMaxSource.value() == TokenPosition::kMaxSourcePos); 798 EXPECT(TokenPosition::kMaxSource.value() == TokenPosition::kMaxSourcePos);
796 EXPECT(!TokenPosition(0).IsSynthetic()); 799 EXPECT(!TokenPosition(0).IsSynthetic());
797 EXPECT(TokenPosition(0).ToSynthetic().IsSynthetic()); 800 EXPECT(TokenPosition(0).ToSynthetic().IsSynthetic());
798 EXPECT(TokenPosition(9).ToSynthetic().IsSynthetic()); 801 EXPECT(TokenPosition(9).ToSynthetic().IsSynthetic());
799 EXPECT(!TokenPosition(-1).FromSynthetic().IsSynthetic()); 802 EXPECT(!TokenPosition(-1).FromSynthetic().IsSynthetic());
800 EXPECT(!TokenPosition::kNoSource.IsSynthetic()); 803 EXPECT(!TokenPosition::kNoSource.IsSynthetic());
801 EXPECT(!TokenPosition::kLast.IsSynthetic()); 804 EXPECT(!TokenPosition::kLast.IsSynthetic());
802 EXPECT(SyntheticRoundTripTest(TokenPosition(0))); 805 EXPECT(SyntheticRoundTripTest(TokenPosition(0)));
803 EXPECT(SyntheticRoundTripTest(TokenPosition::kMaxSource)); 806 EXPECT(SyntheticRoundTripTest(TokenPosition::kMaxSource));
804 EXPECT(SyntheticRoundTripTest(TokenPosition::kMinSource)); 807 EXPECT(SyntheticRoundTripTest(TokenPosition::kMinSource));
805 } 808 }
806 809
807 } // namespace dart 810 } // namespace dart
808 811
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698