summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86TargetMachine.h
Commit message (Collapse)AuthorAgeFilesLines
...
* Add a quick and dirty "loop aligner pass". x86 uses it to align its loops to ↵Evan Cheng2008-02-281-0/+1
| | | | | | 16-byte boundaries. llvm-svn: 47703
* Rename MRegisterInfo to TargetRegisterInfo.Dan Gohman2008-02-101-1/+1
| | | | llvm-svn: 46930
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Preliminary PIC JIT support for X86 (32-bit) / Darwin.Evan Cheng2007-12-221-0/+1
| | | | llvm-svn: 45313
* Added -print-emitted-asm to print out JIT generated asm to cerr.Evan Cheng2007-07-201-2/+2
| | | | llvm-svn: 40123
* Moved the MachOWriter and ELFWriter out of the Target/* files. Placed theBill Wendling2007-02-081-4/+3
| | | | | | | | definition of it into the CodeGen library. This is so that a backend doesn't necessarily add in these writers if it doesn't use them (like in the lli program). llvm-svn: 34034
* Return an X86ELFWriterInfo object.Bill Wendling2007-01-271-1/+6
| | | | llvm-svn: 33574
* Revert patch.Bill Wendling2007-01-171-1/+0
| | | | llvm-svn: 33298
* Create the specified TargetObjInfo and use it.Bill Wendling2007-01-171-0/+1
| | | | llvm-svn: 33291
* Committing X86-64 support.Evan Cheng2006-09-081-1/+23
| | | | llvm-svn: 30177
* 1. Remove condition on delete.Jim Laskey2006-09-071-5/+4
| | | | | | | | 2. Protect and outline createTargetAsmInfo. 3. Misc. kruft. llvm-svn: 30169
* Make target asm info a property of the target machine.Jim Laskey2006-09-071-0/+4
| | | | llvm-svn: 30162
* Completely rearchitect the interface between targets and the pass manager.Chris Lattner2006-09-041-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | This pass: 1. Splits TargetMachine into TargetMachine (generic targets, can be implemented any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by things using libcodegen and other support). 2. Instead of having each target fully populate the passmgr for file or JIT output, move all this to common code, and give targets hooks they can implement. 3. Commonalize the target population stuff between file emission and JIT emission. 4. All (native code) codegen stuff now happens in a FunctionPassManager, which paves the way for "fast -O0" stuff in the CFE later, and now LLC could lazily stream .bc files from disk to use less memory. 5. There are now many fewer #includes and the targets don't depend on the scalar xforms or libanalysis anymore (but codegen does). 6. Changing common code generator pass ordering stuff no longer requires touching all targets. 7. The JIT now has the option of "-fast" codegen or normal optimized codegen, which is now orthogonal to the fact that JIT'ing is being done. llvm-svn: 30081
* Fix a build breaker.Evan Cheng2006-05-301-2/+2
| | | | llvm-svn: 28574
* More coverity fixesChris Lattner2006-05-121-1/+3
| | | | llvm-svn: 28266
* Refactor a bunch of includes so that TargetMachine.h doesn't have to includeOwen Anderson2006-05-121-0/+1
| | | | | | | TargetData.h. This should make recompiles a bit faster with my current TargetData tinkering. llvm-svn: 28238
* Refactor TargetMachine, pushing handling of TargetData into the ↵Owen Anderson2006-05-031-0/+2
| | | | | | | | target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference. This fixes PR 759. llvm-svn: 28074
* Eliminate IntrinsicLowering from TargetMachine.Chris Lattner2006-03-231-3/+1
| | | | | | Make the CBE and V9 backends create their own, since they're the only ones that use it. llvm-svn: 26974
* Added getTargetLowering() to TargetMachine. Refactored targets to support this.Evan Cheng2006-03-131-4/+8
| | | | llvm-svn: 26742
* Add a new option to indicate we want the code generator to emit code ↵Chris Lattner2005-11-081-7/+1
| | | | | | quickly,not spending tons of time microoptimizing it. This is useful for an -O0style of build. llvm-svn: 24233
* 1. Use SubtargetFeatures in llc/lli.Jim Laskey2005-09-011-1/+2
| | | | | | | | 2. Propagate feature "string" to all targets. 3. Implement use of SubtargetFeatures in PowerPCTargetSubtarget. llvm-svn: 23192
* Implement Subtarget supportNate Begeman2005-07-121-0/+3
| | | | | | | | | | | | | | | | Implement the X86 Subtarget. This consolidates the checks for target triple, and setting options based on target triple into one place. This allows us to convert the asm printer and isel over from being littered with "forDarwin", "forCygwin", etc. into just having the appropriate flags for each subtarget feature controlling the code for that feature. This patch also implements indirect external and weak references in the X86 pattern isel, for darwin. Next up is to convert over the asm printers to use this new interface. llvm-svn: 22389
* Refactor the addPassesToEmitAssembly interface into a addPassesToEmitFileChris Lattner2005-06-251-1/+2
| | | | | | interface. llvm-svn: 22282
* * Remove trailing whitespaceMisha Brukman2005-04-211-4/+4
| | | | | | * Convert tabs to spaces llvm-svn: 21426
* Remove a dead function, which died when we got GAS emission working (phwew,Chris Lattner2004-11-161-8/+0
| | | | | | hold your nose!) llvm-svn: 17869
* Auto-registrate targetChris Lattner2004-07-111-0/+3
| | | | llvm-svn: 14745
* Convert to the new TargetMachine interface.Chris Lattner2004-06-021-6/+2
| | | | llvm-svn: 13952
* Add emitInstruction() API so that we can get the bytes of a simple instructionAlkis Evlogimenos2004-03-091-0/+7
| | | | llvm-svn: 12252
* TargetCacheInfo has been removed; its only uses were to propagate a constantBrian Gaeke2004-03-011-9/+5
| | | | | | | | | (16) into certain areas of the SPARC V9 back-end. I'm fairly sure the US IIIi's dcache has 32-byte lines, so I'm not sure where the 16 came from. However, in the interest of not breaking things any more than they already are, I'm going to leave the constant alone. llvm-svn: 12043
* Clean up a lot of the code I added yesterday by exposing the IntrinsicLoweringChris Lattner2003-12-281-2/+0
| | | | | | implementation from the TargetMachine directly. llvm-svn: 10636
* implement support for the intrinsic lowering functionalityChris Lattner2003-12-281-1/+4
| | | | llvm-svn: 10629
* Rip JIT specific stuff out of TargetMachine, as per PR176Chris Lattner2003-12-201-15/+8
| | | | llvm-svn: 10542
* Implement the TargetMachine::getJITStubForFunction method for X86, finegrainifyChris Lattner2003-12-121-0/+6
| | | | | | namespacification. llvm-svn: 10430
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+4
| | | | llvm-svn: 9903
* Added LLVM copyright header.John Criswell2003-10-211-0/+7
| | | | llvm-svn: 9321
* Minor leftover fixups from replaceMachineCodeForFunction () change.Brian Gaeke2003-10-201-1/+1
| | | | llvm-svn: 9295
* Add prototype for replaceMachineCodeForFunction().Brian Gaeke2003-10-171-0/+2
| | | | llvm-svn: 9202
* OptInfo is no longer requiredChris Lattner2003-09-011-1/+0
| | | | llvm-svn: 8312
* Targets should configure themselves based on a Module, not some wierd flagsChris Lattner2003-08-241-1/+1
| | | | llvm-svn: 8132
* addPassesToJITCompile and addPassesToEmitMachineCode now take aBrian Gaeke2003-08-131-3/+4
| | | | | | | FunctionPassManager, to support function-at-a-time compilation and emission of code. llvm-svn: 7821
* lib/Target/X86/X86TargetMachine.{cpp,h}: Add initial versionBrian Gaeke2003-06-181-0/+2
| | | | | | (non-working) of llc guts for X86, and add a prototype for it. llvm-svn: 6779
* More renamings of Target/Machine*Info to Target/Target*InfoChris Lattner2002-12-291-2/+2
| | | | llvm-svn: 5204
* Rename MachineOptInfo to TargetoptInfoChris Lattner2002-12-291-2/+2
| | | | | | Rename MachineCacheInfo to TargetCacheInfo llvm-svn: 5203
* Rename MachineFrameInfo to TargetFrameInfo.hChris Lattner2002-12-281-1/+1
| | | | llvm-svn: 5199
* Implement the TargetFrameInfo interfaceChris Lattner2002-12-281-6/+9
| | | | llvm-svn: 5189
* Changes to allow for a configurable target machine that allows big endian ↵Chris Lattner2002-12-241-1/+1
| | | | | | and/or long pointer operation llvm-svn: 5131
* Expose explicit typeChris Lattner2002-12-021-1/+1
| | | | llvm-svn: 4871
* Initial support for machine code emissionChris Lattner2002-12-021-0/+9
| | | | llvm-svn: 4866
* Implement the new optional getRegisterInfoChris Lattner2002-10-301-0/+3
| | | | llvm-svn: 4437
* Convert backend to use passes, implement X86TargetMachineChris Lattner2002-10-291-0/+32
llvm-svn: 4421
OpenPOWER on IntegriCloud