blob: 2a986476ec6ea912c7a0b315313eb62188edeaec [file] [log] [blame]
//===--- GollvmOptions.h - Gollvm Option info & table ---------------------===//
//
// Copyright 2018 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
//
//===----------------------------------------------------------------------===//
#ifndef LLVM_GOLLVM_DRIVER_GOLLVMOPTIONS_H
#define LLVM_GOLLVM_DRIVER_GOLLVMOPTIONS_H
#include "llvm/Option/OptTable.h"
#include <memory>
namespace llvm {
namespace opt {
class OptTable;
}
}
namespace gollvm {
namespace options {
/// Flags specifically for gollvm options. Must not overlap with
/// llvm::opt::DriverFlag.
enum flags {
DriverOption = (1 << 4),
LinkerInput = (1 << 5),
Unsupported = (1 << 6),
Ignored = (1 << 7)
};
enum ID {
OPT_INVALID = 0, // This is not an option ID.
#define OPTION(...) LLVM_MAKE_OPT_ID(__VA_ARGS__),
#include "GollvmOptions.inc"
LastOption
#undef OPTION
};
extern std::unique_ptr<llvm::opt::OptTable> createGollvmDriverOptTable();
} // end namespace options
} // end namespace gollvm
#endif