Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/lib/Transforms/Vectorize/Vectorize.cpp
Line
Count
Source (jump to first uncovered line)
1
//===-- Vectorize.cpp -----------------------------------------------------===//
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 implements common infrastructure for libLLVMVectorizeOpts.a, which
10
// implements several vectorization transformations over the LLVM intermediate
11
// representation, including the C bindings for that library.
12
//
13
//===----------------------------------------------------------------------===//
14
15
#include "llvm/Transforms/Vectorize.h"
16
#include "llvm-c/Initialization.h"
17
#include "llvm-c/Transforms/Vectorize.h"
18
#include "llvm/Analysis/Passes.h"
19
#include "llvm/IR/LegacyPassManager.h"
20
#include "llvm/InitializePasses.h"
21
22
using namespace llvm;
23
24
/// initializeVectorizationPasses - Initialize all passes linked into the
25
/// Vectorization library.
26
36.0k
void llvm::initializeVectorization(PassRegistry &Registry) {
27
36.0k
  initializeLoopVectorizePass(Registry);
28
36.0k
  initializeSLPVectorizerPass(Registry);
29
36.0k
  initializeLoadStoreVectorizerLegacyPassPass(Registry);
30
36.0k
}
31
32
0
void LLVMInitializeVectorization(LLVMPassRegistryRef R) {
33
0
  initializeVectorization(*unwrap(R));
34
0
}
35
36
0
void LLVMAddLoopVectorizePass(LLVMPassManagerRef PM) {
37
0
  unwrap(PM)->add(createLoopVectorizePass());
38
0
}
39
40
0
void LLVMAddSLPVectorizePass(LLVMPassManagerRef PM) {
41
0
  unwrap(PM)->add(createSLPVectorizerPass());
42
0
}