1affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//===- ELFSectLinker.h ----------------------------------------------------===//
2affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//
3affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//                     The MCLinker Project
4affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//
5affc150dc44fab1911775a49636d0ce85333b634Zonr Chang// This file is distributed under the University of Illinois Open Source
6affc150dc44fab1911775a49636d0ce85333b634Zonr Chang// License. See LICENSE.TXT for details.
7affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//
8affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//===----------------------------------------------------------------------===//
9affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//
10affc150dc44fab1911775a49636d0ce85333b634Zonr Chang// ELFSectLinker is a customized linker pass for ELF platform.
11affc150dc44fab1911775a49636d0ce85333b634Zonr Chang// This pass set up default parameters for ELF.
12affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//
13affc150dc44fab1911775a49636d0ce85333b634Zonr Chang//===----------------------------------------------------------------------===//
14affc150dc44fab1911775a49636d0ce85333b634Zonr Chang#ifndef MCLD_ELF_SECTION_LINKER_H
15affc150dc44fab1911775a49636d0ce85333b634Zonr Chang#define MCLD_ELF_SECTION_LINKER_H
16affc150dc44fab1911775a49636d0ce85333b634Zonr Chang#ifdef ENABLE_UNITTEST
17affc150dc44fab1911775a49636d0ce85333b634Zonr Chang#include <gtest.h>
18affc150dc44fab1911775a49636d0ce85333b634Zonr Chang#endif
19affc150dc44fab1911775a49636d0ce85333b634Zonr Chang#include <mcld/CodeGen/SectLinker.h>
20affc150dc44fab1911775a49636d0ce85333b634Zonr Chang
21affc150dc44fab1911775a49636d0ce85333b634Zonr Changnamespace mcld
22affc150dc44fab1911775a49636d0ce85333b634Zonr Chang{
23affc150dc44fab1911775a49636d0ce85333b634Zonr Chang
24affc150dc44fab1911775a49636d0ce85333b634Zonr Changclass ELFSectLinker : public SectLinker
25affc150dc44fab1911775a49636d0ce85333b634Zonr Chang{
26affc150dc44fab1911775a49636d0ce85333b634Zonr Changpublic:
27affc150dc44fab1911775a49636d0ce85333b634Zonr Chang  ELFSectLinker(SectLinkerOption &pOption,
28affc150dc44fab1911775a49636d0ce85333b634Zonr Chang                mcld::TargetLDBackend &pLDBackend);
29affc150dc44fab1911775a49636d0ce85333b634Zonr Chang
30affc150dc44fab1911775a49636d0ce85333b634Zonr Chang  virtual ~ELFSectLinker();
31affc150dc44fab1911775a49636d0ce85333b634Zonr Chang};
32affc150dc44fab1911775a49636d0ce85333b634Zonr Chang
33affc150dc44fab1911775a49636d0ce85333b634Zonr Chang} // namespace of mcld
34affc150dc44fab1911775a49636d0ce85333b634Zonr Chang
35affc150dc44fab1911775a49636d0ce85333b634Zonr Chang#endif
36affc150dc44fab1911775a49636d0ce85333b634Zonr Chang
37