blob: bee15777edc2f33f73984887973b6f4bc04f8279 [file] [log] [blame]
Diego Trevino Ferrerddc64eb2019-08-08 22:16:33 +00001//===- DeltaManager.h - Runs Delta Passes to reduce Input -----------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// This file calls each specialized Delta pass in order to reduce the input IR
10// file.
11//
12//===----------------------------------------------------------------------===//
13
14#include "TestRunner.h"
15#include "deltas/Delta.h"
David Blaikie5adb3d22019-09-12 01:20:48 +000016#include "deltas/ReduceArguments.h"
Diego Trevino Ferrerddc64eb2019-08-08 22:16:33 +000017#include "deltas/ReduceFunctions.h"
Diego Trevino Ferrer0ffe6872019-08-15 22:54:09 +000018#include "deltas/ReduceGlobalVars.h"
David Blaikie477c1df2019-09-10 22:09:58 +000019#include "deltas/ReduceMetadata.h"
Diego Trevino Ferrerddc64eb2019-08-08 22:16:33 +000020
21namespace llvm {
22
Diego Trevino Ferrer0ffe6872019-08-15 22:54:09 +000023// TODO: Add CLI option to run only specified Passes (for unit tests)
Diego Trevino Ferrerddc64eb2019-08-08 22:16:33 +000024inline void runDeltaPasses(TestRunner &Tester) {
25 reduceFunctionsDeltaPass(Tester);
Diego Trevino Ferrer0ffe6872019-08-15 22:54:09 +000026 reduceGlobalsDeltaPass(Tester);
David Blaikie477c1df2019-09-10 22:09:58 +000027 reduceMetadataDeltaPass(Tester);
David Blaikie5adb3d22019-09-12 01:20:48 +000028 reduceArgumentsDeltaPass(Tester);
Diego Trevino Ferrerddc64eb2019-08-08 22:16:33 +000029 // TODO: Implement the remaining Delta Passes
30}
31
32} // namespace llvm