1 //===-- llvm/Target/TargetMachineImpls.h - Target Descriptions --*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file was developed by the LLVM research group and is distributed under
6 // the University of Illinois Open Source License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file defines the entry point to getting access to the various target
11 // machine implementations available to LLVM.
13 //===----------------------------------------------------------------------===//
15 #ifndef LLVM_TARGET_TARGETMACHINEIMPLS_H
16 #define LLVM_TARGET_TARGETMACHINEIMPLS_H
22 class IntrinsicLowering;
24 // allocateSparcTargetMachine - Allocate and return a subclass of
25 // TargetMachine that implements the Sparc backend. This takes ownership of
26 // the IntrinsicLowering pointer, deleting it when the target machine is
29 TargetMachine *allocateSparcTargetMachine(const Module &M,
30 IntrinsicLowering *IL = 0);
32 // allocateX86TargetMachine - Allocate and return a subclass of TargetMachine
33 // that implements the X86 backend. This takes ownership of the
34 // IntrinsicLowering pointer, deleting it when the target machine is
37 TargetMachine *allocateX86TargetMachine(const Module &M,
38 IntrinsicLowering *IL = 0);
39 } // End llvm namespace