summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86TargetMachine.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Add support to the X86 backend for emitting ELF files. To use this, weChris Lattner2005-06-271-2/+15
| | | | | | | | | currently use: llc t.bc --filetype=obj This will produce a t.o file which is dumpable with readelf. Currently the file produced is empty, but the scaffolding to do more is now in place. llvm-svn: 22292
* Refactor the addPassesToEmitAssembly interface into a addPassesToEmitFileChris Lattner2005-06-251-3/+5
| | | | | | interface. llvm-svn: 22282
* Enable pattern isel by defaultChris Lattner2005-05-121-4/+4
| | | | llvm-svn: 21898
* * Remove trailing whitespaceMisha Brukman2005-04-211-3/+3
| | | | | | * Convert tabs to spaces llvm-svn: 21426
* Make pattern isel default for ppcNate Begeman2005-04-151-5/+4
| | | | | | | | | | Add new ppc beta option related to using condition registers Make pattern isel control flag (-enable-pattern-isel) global and tristate 0 == off 1 == on 2 == target default llvm-svn: 21309
* Allow the selection-dag based selector to be diabled with -disable-pattern-isel.Chris Lattner2005-01-071-2/+11
| | | | | | | For now, this is the default, as the current selector is missing some big pieces. To enable the new selector, pass -disable-pattern-isel=false to llc or lli. llvm-svn: 19335
* Revert elimination of global variable hack... still needed.Jeff Cohen2005-01-031-0/+7
| | | | llvm-svn: 19273
* Eliminate the use of the global variable hack in the X86 target that was usedJeff Cohen2005-01-021-7/+0
| | | | | | | to get Visual Studio to link in X86.lib to the executables that need it. There is another way of doing it. llvm-svn: 19252
* Use the target triple to pick this target.Chris Lattner2004-12-121-1/+7
| | | | llvm-svn: 18830
* Fix a warningChris Lattner2004-11-021-1/+2
| | | | llvm-svn: 17431
* Add placeholder variable to make Win32 work, applied for Morten OfstadChris Lattner2004-11-011-0/+6
| | | | llvm-svn: 17406
* Improve compatibility with VC++, patch contributed by Morten Ofstad!Chris Lattner2004-10-181-1/+1
| | | | llvm-svn: 17126
* The person who was planning to add SSE support isn't anymore, so disableChris Lattner2004-10-081-1/+3
| | | | | | | | | the -sse* options (to avoid misleading people). Also, the stack alignment of the target doesn't depend on whether SSE is eventually implemented, so remove a comment. llvm-svn: 16860
* Changes For Bug 352Reid Spencer2004-09-011-2/+2
| | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. llvm-svn: 16137
* Add -sse[,2,3] arguments to LLCChris Lattner2004-08-241-0/+14
| | | | llvm-svn: 16018
* Disable the pattern iselChris Lattner2004-08-151-14/+2
| | | | llvm-svn: 15787
* Completely disable the pattern isel until it is more substantial.Chris Lattner2004-08-011-0/+4
| | | | llvm-svn: 15380
* Remove some (LARGE) abandoned code for the release. If this is ever neededChris Lattner2004-07-221-5/+1
| | | | | | again in the future, it can be resurrected out of CVS llvm-svn: 15112
* Delete the allocate*TargetMachine function, which is now dead .Chris Lattner2004-07-111-9/+1
| | | | | | The shared command line options are now in a header that makes sense. llvm-svn: 14756
* Make these format a bit nicerChris Lattner2004-07-111-1/+1
| | | | llvm-svn: 14747
* Auto-registrate targetChris Lattner2004-07-111-0/+22
| | | | llvm-svn: 14745
* Remove dead blocksChris Lattner2004-07-021-0/+6
| | | | llvm-svn: 14564
* I believe that the code generator now properly handles dead basic blocks. ↵Chris Lattner2004-06-291-8/+0
| | | | | | | | If not, this is a bug, and should be fixed. llvm-svn: 14476
* Move the IntrinsicLowering header into the CodeGen directory, as per PR346Chris Lattner2004-06-201-2/+2
| | | | llvm-svn: 14266
* Fix the fixed stack offset, patch contributed by Vladimir PrusChris Lattner2004-06-101-1/+1
| | | | llvm-svn: 14110
* Add support for accurate garbage collection to the LLVM code generatorsChris Lattner2004-05-231-0/+5
| | | | llvm-svn: 13696
* Tablgen files for really simple instruction selectorJakub Staszak2004-04-061-1/+5
| | | | llvm-svn: 12714
* The X86 backend no longer needs the select lowering pass.Chris Lattner2004-03-311-6/+0
| | | | llvm-svn: 12578
* Add direct support for integer select instructions, though we still don't ↵Chris Lattner2004-03-301-2/+2
| | | | | | | | support folding compares into the select yet. llvm-svn: 12553
* Add the select lowering pass to get initial support for select instructionsChris Lattner2004-03-301-0/+6
| | | | llvm-svn: 12541
* make -print-machineinstrs work for both SparcV9 and X86Brian Gaeke2004-03-041-10/+8
| | | | llvm-svn: 12122
* Fix failures in 099.go due to the cfgsimplify pass creating switch instructionsChris Lattner2004-02-251-5/+6
| | | | | | where there did not used to be any before llvm-svn: 11829
* Add back machine code deleter pass until we get a MachineCode passAlkis Evlogimenos2004-02-151-0/+3
| | | | | | | that will be responsible for the creation of MachineFunctions and will be required by all MachineFunctionPass passes. llvm-svn: 11453
* Change MachineBasicBlock's vector of MachineInstr pointers into anAlkis Evlogimenos2004-02-121-3/+0
| | | | | | | | | ilist of MachineInstr objects. This allows constant time removal and insertion of MachineInstr instances from anywhere in each MachineBasicBlock. It also allows for constant time splicing of MachineInstrs into or out of MachineBasicBlocks. llvm-svn: 11340
* Add a new (hidden) option that is useful for profiling.Chris Lattner2004-02-091-1/+5
| | | | llvm-svn: 11218
* Take away the default iostream argument of createMachineFunctionPrinterPass(),Brian Gaeke2004-02-041-6/+6
| | | | | | at Chris's request. llvm-svn: 11120
* Clean up a lot of the code I added yesterday by exposing the IntrinsicLoweringChris Lattner2003-12-281-12/+7
| | | | | | implementation from the TargetMachine directly. llvm-svn: 10636
* implement support for the intrinsic lowering functionalityChris Lattner2003-12-281-9/+17
| | | | llvm-svn: 10629
* Remove floating point killer pass. This is now implemented in theAlkis Evlogimenos2003-12-201-10/+0
| | | | | | | | | | instruction selector by adding a new pseudo-instruction FP_REG_KILL. This instruction implicitly defines all x86 fp registers and is a terminator so that passes which add machine code at the end of basic blocks (like phi elimination) do not add instructions between it and the branch or return instruction. llvm-svn: 10562
* Finally, _actually delete the machine code_ for a function, after it hasChris Lattner2003-12-201-2/+6
| | | | | | | been emitted. Also, since the FPK pass is causing memory access violations, disable it. llvm-svn: 10559
* Rip JIT specific stuff out of TargetMachine, as per PR176Chris Lattner2003-12-201-20/+8
| | | | llvm-svn: 10542
* Add a floating point killer pass. This pass runs before registerAlkis Evlogimenos2003-12-131-0/+10
| | | | | | | | | | allocaton on the X86 to add information to the machine code denoting that our floating point stackifier cannot handle virtual point register that are alive across basic blocks. This pass adds an implicit def of all virtual floating point register at the end of each basic block. llvm-svn: 10446
* Add an option to enable the SSA based peephole optimizer.Chris Lattner2003-12-011-4/+8
| | | | | | | | | | Eventually this pass will provide substantially better code in the interim between when we have a crappy isel and nice isel. Unfortunately doing so requires fixing the backend to actually SUPPORT all of the fancy addressing modes that we now generate, and writing a DCE pass for machine code. Each of these is a fairly substantial job, so this will remain disabled for the immediate future. :( llvm-svn: 10276
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+4
| | | | llvm-svn: 9903
* Fix warnings building on sparcChris Lattner2003-11-061-2/+2
| | | | llvm-svn: 9758
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | Header files will be on the way. llvm-svn: 9298
* Make replaceMachineCodeForFunction return void.Brian Gaeke2003-10-201-2/+1
| | | | llvm-svn: 9288
* Eliminate code for pointer size and endianness emulation.Chris Lattner2003-10-201-6/+1
| | | | llvm-svn: 9281
* You can't just blat the address into memory, you have to blat itsBrian Gaeke2003-10-171-4/+7
| | | | | | displacement. llvm-svn: 9210
* Implement replaceMachineCodeForFunction() for x86.Brian Gaeke2003-10-171-0/+7
| | | | llvm-svn: 9204
OpenPOWER on IntegriCloud