mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12122 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			70 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| //===-- llvm/Target/TargetMachineImpls.h - Target Descriptions --*- C++ -*-===//
 | |
| // 
 | |
| //                     The LLVM Compiler Infrastructure
 | |
| //
 | |
| // This file was developed by the LLVM research group and is distributed under
 | |
| // the University of Illinois Open Source License. See LICENSE.TXT for details.
 | |
| // 
 | |
| //===----------------------------------------------------------------------===//
 | |
| //
 | |
| // This file defines the entry point to getting access to the various target
 | |
| // machine implementations available to LLVM.
 | |
| //
 | |
| //===----------------------------------------------------------------------===//
 | |
| 
 | |
| #ifndef LLVM_TARGET_TARGETMACHINEIMPLS_H
 | |
| #define LLVM_TARGET_TARGETMACHINEIMPLS_H
 | |
| 
 | |
| namespace llvm {
 | |
|   /// Command line options shared between TargetMachine implementations - 
 | |
|   /// these should go in their own header eventually.
 | |
|   ///
 | |
|   extern bool PrintMachineCode;
 | |
| 
 | |
|   class TargetMachine;
 | |
|   class Module;
 | |
|   class IntrinsicLowering;
 | |
|   
 | |
|   // allocateCTargetMachine - Allocate and return a subclass of TargetMachine
 | |
|   // that implements emits C code.  This takes ownership of the
 | |
|   // IntrinsicLowering pointer, deleting it when the target machine is
 | |
|   // destroyed.
 | |
|   //
 | |
|   TargetMachine *allocateCTargetMachine(const Module &M,
 | |
|                                         IntrinsicLowering *IL = 0);
 | |
| 
 | |
|   // allocateSparcV9TargetMachine - Allocate and return a subclass of
 | |
|   // TargetMachine that implements the 64-bit Sparc backend.  This takes
 | |
|   // ownership of the IntrinsicLowering pointer, deleting it when the target
 | |
|   // machine is destroyed.
 | |
|   //
 | |
|   TargetMachine *allocateSparcV9TargetMachine(const Module &M,
 | |
|                                             IntrinsicLowering *IL = 0);
 | |
|   
 | |
|   // allocateSparcV8TargetMachine - Allocate and return a subclass of
 | |
|   // TargetMachine that implements the 32-bit Sparc backend.  This takes
 | |
|   // ownership of the IntrinsicLowering pointer, deleting it when the target
 | |
|   // machine is destroyed.
 | |
|   //
 | |
|   TargetMachine *allocateSparcV8TargetMachine(const Module &M,
 | |
|                                               IntrinsicLowering *IL = 0);
 | |
| 
 | |
|   // allocateX86TargetMachine - Allocate and return a subclass of TargetMachine
 | |
|   // that implements the X86 backend.  This takes ownership of the
 | |
|   // IntrinsicLowering pointer, deleting it when the target machine is
 | |
|   // destroyed.
 | |
|   //
 | |
|   TargetMachine *allocateX86TargetMachine(const Module &M,
 | |
|                                           IntrinsicLowering *IL = 0);
 | |
| 
 | |
|   // allocatePowerPCTargetMachine - Allocate and return a subclass
 | |
|   // of TargetMachine that implements the PowerPC backend.  This takes
 | |
|   // ownership of the IntrinsicLowering pointer, deleting it when
 | |
|   // the target machine is destroyed.
 | |
|   //
 | |
|   TargetMachine *allocatePowerPCTargetMachine(const Module &M,
 | |
|                                               IntrinsicLowering *IL = 0);
 | |
| } // End llvm namespace
 | |
| 
 | |
| #endif
 |