1317019Sdim//===--- X86.h - X86-specific Tool Helpers ----------------------*- C++ -*-===// 2317019Sdim// 3353358Sdim// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4353358Sdim// See https://llvm.org/LICENSE.txt for license information. 5353358Sdim// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6317019Sdim// 7317019Sdim//===----------------------------------------------------------------------===// 8317019Sdim 9317019Sdim#ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_ARCH_X86_H 10317019Sdim#define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_ARCH_X86_H 11317019Sdim 12317019Sdim#include "clang/Driver/Driver.h" 13317019Sdim#include "llvm/ADT/StringRef.h" 14317019Sdim#include "llvm/ADT/Triple.h" 15317019Sdim#include "llvm/Option/Option.h" 16317019Sdim#include <string> 17317019Sdim#include <vector> 18317019Sdim 19317019Sdimnamespace clang { 20317019Sdimnamespace driver { 21317019Sdimnamespace tools { 22317019Sdimnamespace x86 { 23317019Sdim 24317019Sdimconst char *getX86TargetCPU(const llvm::opt::ArgList &Args, 25317019Sdim const llvm::Triple &Triple); 26317019Sdim 27317019Sdimvoid getX86TargetFeatures(const Driver &D, const llvm::Triple &Triple, 28317019Sdim const llvm::opt::ArgList &Args, 29317019Sdim std::vector<llvm::StringRef> &Features); 30317019Sdim 31317019Sdim} // end namespace x86 32317019Sdim} // end namespace target 33317019Sdim} // end namespace driver 34317019Sdim} // end namespace clang 35317019Sdim 36317019Sdim#endif // LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_ARCH_X86_H 37