diff options
author | NAKAMURA Takumi <geek4civic@gmail.com> | 2014-10-27 12:37:26 +0000 |
---|---|---|
committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2014-10-27 12:37:26 +0000 |
commit | 729be144354ac6574ed5c0a8677adf2ddde94b35 (patch) | |
tree | 88c0bc37a4faf0676c8366910478fc96c6b1fa81 /clang-tools-extra | |
parent | 64df1f177b9d1519075bc46ab4e1413495179ea3 (diff) | |
download | bcm5719-llvm-729be144354ac6574ed5c0a8677adf2ddde94b35.tar.gz bcm5719-llvm-729be144354ac6574ed5c0a8677adf2ddde94b35.zip |
Prune CRLF.
llvm-svn: 220678
Diffstat (limited to 'clang-tools-extra')
-rw-r--r-- | clang-tools-extra/test/pp-trace/pp-trace-macro.cpp | 184 | ||||
-rw-r--r-- | clang-tools-extra/unittests/clang-modernize/PerfSupportTest.cpp | 194 |
2 files changed, 189 insertions, 189 deletions
diff --git a/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp b/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp index 8725e288e29..aee7b2f85cc 100644 --- a/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp +++ b/clang-tools-extra/test/pp-trace/pp-trace-macro.cpp @@ -6,96 +6,96 @@ int i = MACRO; #endif #undef MACRO #if defined(MACRO) -#endif
-#define FUNCMACRO(ARG1) ARG1
+#endif +#define FUNCMACRO(ARG1) ARG1 int j = FUNCMACRO(1); -#define X X_IMPL(a+y,b) X_IMPL2(c)
-#define X_IMPL(p1,p2)
-#define X_IMPL2(p1)
-X
-
-// CHECK: ---
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: __STDC__
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: __STDC_HOSTED__
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: __cplusplus
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: __STDC_UTF_16__
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: __STDC_UTF_32__
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: MACRO
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroExpands
-// CHECK-NEXT: MacroNameTok: MACRO
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:4:9", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:4:9"]
-// CHECK-NEXT: Args: (null)
-// CHECK-NEXT: - Callback: Defined
-// CHECK-NEXT: MacroNameTok: MACRO
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:5", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:19"]
-// CHECK-NEXT: - Callback: If
-// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:2"
-// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:4", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:6:1"]
-// CHECK-NEXT: ConditionValue: CVK_True
-// CHECK-NEXT: - Callback: Endif
-// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:6:2"
-// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:2"
-// CHECK-NEXT: - Callback: MacroUndefined
-// CHECK-NEXT: MacroNameTok: MACRO
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: Defined
-// CHECK-NEXT: MacroNameTok: MACRO
-// CHECK-NEXT: MacroDirective: (null)
-// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:5", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:19"]
-// CHECK-NEXT: - Callback: If
-// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:2"
-// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:4", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:9:1"]
-// CHECK-NEXT: ConditionValue: CVK_False
-// CHECK-NEXT: - Callback: Endif
-// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:9:2"
-// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:2"
-// CHECK-NEXT: - Callback: SourceRangeSkipped
-// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:2", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:9:2"]
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: FUNCMACRO
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroExpands
-// CHECK-NEXT: MacroNameTok: FUNCMACRO
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:11:9", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:11:20"]
-// CHECK-NEXT: Args: [1]
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: X
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: X_IMPL
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroDefined
-// CHECK-NEXT: MacroNameTok: X_IMPL2
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: - Callback: MacroExpands
-// CHECK-NEXT: MacroNameTok: X
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:15:1", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:15:1"]
-// CHECK-NEXT: Args: (null)
-// CHECK-NEXT: - Callback: MacroExpands
-// CHECK-NEXT: MacroNameTok: X_IMPL
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: Range: [(nonfile), (nonfile)]
-// CHECK-NEXT: Args: [a <plus> y, b]
-// CHECK-NEXT: - Callback: MacroExpands
-// CHECK-NEXT: MacroNameTok: X_IMPL2
-// CHECK-NEXT: MacroDirective: MD_Define
-// CHECK-NEXT: Range: [(nonfile), (nonfile)]
-// CHECK-NEXT: Args: [c]
-// CHECK-NEXT: - Callback: EndOfMainFile
-// CHECK-NEXT: ...
+#define X X_IMPL(a+y,b) X_IMPL2(c) +#define X_IMPL(p1,p2) +#define X_IMPL2(p1) +X + +// CHECK: --- +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: __STDC__ +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: __STDC_HOSTED__ +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: __cplusplus +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: __STDC_UTF_16__ +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: __STDC_UTF_32__ +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: MACRO +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroExpands +// CHECK-NEXT: MacroNameTok: MACRO +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:4:9", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:4:9"] +// CHECK-NEXT: Args: (null) +// CHECK-NEXT: - Callback: Defined +// CHECK-NEXT: MacroNameTok: MACRO +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:5", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:19"] +// CHECK-NEXT: - Callback: If +// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:2" +// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:4", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:6:1"] +// CHECK-NEXT: ConditionValue: CVK_True +// CHECK-NEXT: - Callback: Endif +// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:6:2" +// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:5:2" +// CHECK-NEXT: - Callback: MacroUndefined +// CHECK-NEXT: MacroNameTok: MACRO +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: Defined +// CHECK-NEXT: MacroNameTok: MACRO +// CHECK-NEXT: MacroDirective: (null) +// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:5", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:19"] +// CHECK-NEXT: - Callback: If +// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:2" +// CHECK-NEXT: ConditionRange: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:4", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:9:1"] +// CHECK-NEXT: ConditionValue: CVK_False +// CHECK-NEXT: - Callback: Endif +// CHECK-NEXT: Loc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:9:2" +// CHECK-NEXT: IfLoc: "{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:2" +// CHECK-NEXT: - Callback: SourceRangeSkipped +// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:8:2", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:9:2"] +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: FUNCMACRO +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroExpands +// CHECK-NEXT: MacroNameTok: FUNCMACRO +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:11:9", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:11:20"] +// CHECK-NEXT: Args: [1] +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: X +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: X_IMPL +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroDefined +// CHECK-NEXT: MacroNameTok: X_IMPL2 +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: - Callback: MacroExpands +// CHECK-NEXT: MacroNameTok: X +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: Range: ["{{.*}}{{[/\\]}}pp-trace-macro.cpp:15:1", "{{.*}}{{[/\\]}}pp-trace-macro.cpp:15:1"] +// CHECK-NEXT: Args: (null) +// CHECK-NEXT: - Callback: MacroExpands +// CHECK-NEXT: MacroNameTok: X_IMPL +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: Range: [(nonfile), (nonfile)] +// CHECK-NEXT: Args: [a <plus> y, b] +// CHECK-NEXT: - Callback: MacroExpands +// CHECK-NEXT: MacroNameTok: X_IMPL2 +// CHECK-NEXT: MacroDirective: MD_Define +// CHECK-NEXT: Range: [(nonfile), (nonfile)] +// CHECK-NEXT: Args: [c] +// CHECK-NEXT: - Callback: EndOfMainFile +// CHECK-NEXT: ... diff --git a/clang-tools-extra/unittests/clang-modernize/PerfSupportTest.cpp b/clang-tools-extra/unittests/clang-modernize/PerfSupportTest.cpp index 71209a6e441..083ff41c45d 100644 --- a/clang-tools-extra/unittests/clang-modernize/PerfSupportTest.cpp +++ b/clang-tools-extra/unittests/clang-modernize/PerfSupportTest.cpp @@ -1,97 +1,97 @@ -//===- clang-modernize/PerfSupportTest.cpp - PerfSupport unit tests -------===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include "gtest/gtest.h"
-#include "Core/PerfSupport.h"
-
-using namespace llvm;
-using namespace clang;
-
-class TransformA : public Transform {
-public:
- TransformA(const TransformOptions &Options)
- : Transform("TransformA", Options) {}
-
- virtual int apply(const tooling::CompilationDatabase &,
- const std::vector<std::string> &) {
- return 0;
- }
-
- void addTiming(StringRef Label, TimeRecord Duration) {
- Transform::addTiming(Label, Duration);
- }
-};
-
-class TransformB : public Transform {
-public:
- TransformB(const TransformOptions &Options)
- : Transform("TransformB", Options) {}
-
- virtual int apply(const tooling::CompilationDatabase &,
- const std::vector<std::string> &) {
- return 0;
- }
-
- void addTiming(StringRef Label, TimeRecord Duration) {
- Transform::addTiming(Label, Duration);
- }
-};
-
-struct ExpectedResults {
- const char *SourceName;
- unsigned DataCount;
- struct Datum {
- const char *Label;
- float Duration;
- } Data[2];
-};
-
-TEST(PerfSupport, collectSourcePerfData) {
- TransformOptions Options;
- TransformA A(Options);
- TransformB B(Options);
-
- // The actual durations don't matter. Below only their relative ordering is
- // tested to ensure times, labels, and sources all stay together properly.
- A.addTiming("FileA.cpp", TimeRecord::getCurrentTime(/*Start=*/true));
- A.addTiming("FileC.cpp", TimeRecord::getCurrentTime(/*Start=*/true));
- B.addTiming("FileC.cpp", TimeRecord::getCurrentTime(/*Start=*/true));
- B.addTiming("FileB.cpp", TimeRecord::getCurrentTime(/*Start=*/true));
-
- SourcePerfData PerfData;
- collectSourcePerfData(A, PerfData);
-
- SourcePerfData::const_iterator FileAI = PerfData.find("FileA.cpp");
- EXPECT_NE(FileAI, PerfData.end());
- SourcePerfData::const_iterator FileCI = PerfData.find("FileC.cpp");
- EXPECT_NE(FileCI, PerfData.end());
- EXPECT_EQ(2u, PerfData.size());
-
- EXPECT_EQ(1u, FileAI->second.size());
- EXPECT_EQ("TransformA", FileAI->second[0].Label);
- EXPECT_EQ(1u, FileCI->second.size());
- EXPECT_EQ("TransformA", FileCI->second[0].Label);
- EXPECT_LE(FileAI->second[0].Duration, FileCI->second[0].Duration);
-
- collectSourcePerfData(B, PerfData);
-
- SourcePerfData::const_iterator FileBI = PerfData.find("FileB.cpp");
- EXPECT_NE(FileBI, PerfData.end());
- EXPECT_EQ(3u, PerfData.size());
-
- EXPECT_EQ(1u, FileAI->second.size());
- EXPECT_EQ("TransformA", FileAI->second[0].Label);
- EXPECT_EQ(2u, FileCI->second.size());
- EXPECT_EQ("TransformA", FileCI->second[0].Label);
- EXPECT_EQ("TransformB", FileCI->second[1].Label);
- EXPECT_LE(FileCI->second[0].Duration, FileCI->second[1].Duration);
- EXPECT_EQ(1u, FileBI->second.size());
- EXPECT_EQ("TransformB", FileBI->second[0].Label);
- EXPECT_LE(FileCI->second[1].Duration, FileBI->second[0].Duration);
-}
+//===- clang-modernize/PerfSupportTest.cpp - PerfSupport unit tests -------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#include "gtest/gtest.h" +#include "Core/PerfSupport.h" + +using namespace llvm; +using namespace clang; + +class TransformA : public Transform { +public: + TransformA(const TransformOptions &Options) + : Transform("TransformA", Options) {} + + virtual int apply(const tooling::CompilationDatabase &, + const std::vector<std::string> &) { + return 0; + } + + void addTiming(StringRef Label, TimeRecord Duration) { + Transform::addTiming(Label, Duration); + } +}; + +class TransformB : public Transform { +public: + TransformB(const TransformOptions &Options) + : Transform("TransformB", Options) {} + + virtual int apply(const tooling::CompilationDatabase &, + const std::vector<std::string> &) { + return 0; + } + + void addTiming(StringRef Label, TimeRecord Duration) { + Transform::addTiming(Label, Duration); + } +}; + +struct ExpectedResults { + const char *SourceName; + unsigned DataCount; + struct Datum { + const char *Label; + float Duration; + } Data[2]; +}; + +TEST(PerfSupport, collectSourcePerfData) { + TransformOptions Options; + TransformA A(Options); + TransformB B(Options); + + // The actual durations don't matter. Below only their relative ordering is + // tested to ensure times, labels, and sources all stay together properly. + A.addTiming("FileA.cpp", TimeRecord::getCurrentTime(/*Start=*/true)); + A.addTiming("FileC.cpp", TimeRecord::getCurrentTime(/*Start=*/true)); + B.addTiming("FileC.cpp", TimeRecord::getCurrentTime(/*Start=*/true)); + B.addTiming("FileB.cpp", TimeRecord::getCurrentTime(/*Start=*/true)); + + SourcePerfData PerfData; + collectSourcePerfData(A, PerfData); + + SourcePerfData::const_iterator FileAI = PerfData.find("FileA.cpp"); + EXPECT_NE(FileAI, PerfData.end()); + SourcePerfData::const_iterator FileCI = PerfData.find("FileC.cpp"); + EXPECT_NE(FileCI, PerfData.end()); + EXPECT_EQ(2u, PerfData.size()); + + EXPECT_EQ(1u, FileAI->second.size()); + EXPECT_EQ("TransformA", FileAI->second[0].Label); + EXPECT_EQ(1u, FileCI->second.size()); + EXPECT_EQ("TransformA", FileCI->second[0].Label); + EXPECT_LE(FileAI->second[0].Duration, FileCI->second[0].Duration); + + collectSourcePerfData(B, PerfData); + + SourcePerfData::const_iterator FileBI = PerfData.find("FileB.cpp"); + EXPECT_NE(FileBI, PerfData.end()); + EXPECT_EQ(3u, PerfData.size()); + + EXPECT_EQ(1u, FileAI->second.size()); + EXPECT_EQ("TransformA", FileAI->second[0].Label); + EXPECT_EQ(2u, FileCI->second.size()); + EXPECT_EQ("TransformA", FileCI->second[0].Label); + EXPECT_EQ("TransformB", FileCI->second[1].Label); + EXPECT_LE(FileCI->second[0].Duration, FileCI->second[1].Duration); + EXPECT_EQ(1u, FileBI->second.size()); + EXPECT_EQ("TransformB", FileBI->second[0].Label); + EXPECT_LE(FileCI->second[1].Duration, FileBI->second[0].Duration); +} |