summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-reduce/DeltaManager.h
diff options
context:
space:
mode:
authorDiego Trevino Ferrer <diegof30@gmail.com>2019-08-06 18:59:11 +0000
committerDiego Trevino Ferrer <diegof30@gmail.com>2019-08-06 18:59:11 +0000
commit800618f24190e0dcf32d8528cdd76426744a1b52 (patch)
treec2005eccabde33ac1a39dbaa8b70167adafa3106 /llvm/tools/llvm-reduce/DeltaManager.h
parent7dfe0bc3c162877a4643831b7917fc195098aac6 (diff)
downloadbcm5719-llvm-800618f24190e0dcf32d8528cdd76426744a1b52.tar.gz
bcm5719-llvm-800618f24190e0dcf32d8528cdd76426744a1b52.zip
Added Delta IR Reduction Tool
Summary: Tool parses input IR file, and runs the delta debugging algorithm to reduce the functions inside the input file. Reviewers: alexshap, chandlerc Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D63672 llvm-svn: 368071
Diffstat (limited to 'llvm/tools/llvm-reduce/DeltaManager.h')
-rw-r--r--llvm/tools/llvm-reduce/DeltaManager.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/llvm/tools/llvm-reduce/DeltaManager.h b/llvm/tools/llvm-reduce/DeltaManager.h
new file mode 100644
index 00000000000..027685e4120
--- /dev/null
+++ b/llvm/tools/llvm-reduce/DeltaManager.h
@@ -0,0 +1,26 @@
+//===- llvm-reduce.cpp - The LLVM Delta Reduction utility -----------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+//
+// This class calls each specialized Delta pass by passing it as a template to
+// the generic Delta Pass.
+//
+//===----------------------------------------------------------------------===//
+
+#include "TestRunner.h"
+#include "deltas/Delta.h"
+#include "deltas/RemoveFunctions.h"
+
+namespace llvm {
+
+inline void runDeltaPasses(TestRunner &Tester) {
+ outs() << "Reducing functions...\n";
+ Delta<RemoveFunctions>::run(Tester);
+ // TODO: Implement the rest of the Delta Passes
+}
+
+} // namespace llvm
OpenPOWER on IntegriCloud