#
eb36522a |
| 14-Jun-2012 |
Akira Hatanaka <ahatanaka@mips.com> |
Add long branch expansion pass for MIPS.
llvm-svn: 158433
|
#
d0ac2c93 |
| 25-May-2012 |
Akira Hatanaka <ahatanaka@mips.com> |
Move the code in MipsExpandPseudo to MipsInstrInfo::expandPostRAPseudo. Delete MipsExpandPseudo.
llvm-svn: 157495
|
Revision tags: llvmorg-3.1.0 |
|
#
0fb87feb |
| 12-May-2012 |
Akira Hatanaka <ahatanaka@mips.com> |
Do not add the pass which restores $gp after every function call.
llvm-svn: 156693
|
Revision tags: llvmorg-3.1.0-rc3, llvmorg-3.1.0-rc2 |
|
#
b12f16e7 |
| 01-May-2012 |
Bill Wendling <isanbard@gmail.com> |
Change the PassManager from a reference to a pointer.
The TargetPassManager's default constructor wants to initialize the PassManager to 'null'. But it's illegal to bind a null reference to a null l
Change the PassManager from a reference to a pointer.
The TargetPassManager's default constructor wants to initialize the PassManager to 'null'. But it's illegal to bind a null reference to a null l-value. Make the ivar a pointer instead. PR12468
llvm-svn: 155902
show more ...
|
Revision tags: llvmorg-3.1.0-rc1 |
|
#
b25fda95 |
| 17-Mar-2012 |
Craig Topper <craig.topper@gmail.com> |
Reorder includes in Target backends to following coding standards. Remove some superfluous forward declarations.
llvm-svn: 152997
|
#
b049aef2 |
| 24-Feb-2012 |
Akira Hatanaka <ahatanaka@mips.com> |
Add an option to use a virtual register as the global base register instead of reserving a physical register ($gp or $28) for that purpose.
This will completely eliminate loads that restore the valu
Add an option to use a virtual register as the global base register instead of reserving a physical register ($gp or $28) for that purpose.
This will completely eliminate loads that restore the value of $gp after every function call, if the register allocator assigns a callee-saved register, or eliminate unnecessary loads if it assigns a temporary register.
example:
.cpload $25 // set $gp. ... .cprestore 16 // store $gp to stack slot 16($sp). ... jalr $25 // function call. clobbers $gp. lw $gp, 16($sp) // not emitted if callee-saved reg is chosen. ... lw $2, 4($gp) ... jalr $25 // function call. lw $gp, 16($sp) // not emitted if $gp is not live after this instruction. ...
llvm-svn: 151402
show more ...
|
#
9f610119 |
| 17-Feb-2012 |
Jia Liu <proljc@gmail.com> |
remove Emacs-tag form .cpp files in Mips Backend, and fix some typo.
llvm-svn: 150805
|
#
dd6c1cd4 |
| 17-Feb-2012 |
Jia Liu <proljc@gmail.com> |
add Emacs tag and fix some comment error in file headers
llvm-svn: 150775
|
#
f8ea108c |
| 04-Feb-2012 |
Andrew Trick <atrick@apple.com> |
TargetPassConfig: confine the MC configuration to TargetMachine.
Passes prior to instructon selection are now split into separate configurable stages. Header dependencies are simplified. The bulk of
TargetPassConfig: confine the MC configuration to TargetMachine.
Passes prior to instructon selection are now split into separate configurable stages. Header dependencies are simplified. The bulk of this diff is simply removal of the silly DisableVerify flags.
Sorry for the target header churn. Attempting to stabilize them.
llvm-svn: 149754
show more ...
|
#
ccb67365 |
| 03-Feb-2012 |
Andrew Trick <atrick@apple.com> |
Added TargetPassConfig. The first little step toward configuring codegen passes.
Allows command line overrides to be centralized in LLVMTargetMachine.cpp. LLVMTargetMachine can intercept common pass
Added TargetPassConfig. The first little step toward configuring codegen passes.
Allows command line overrides to be centralized in LLVMTargetMachine.cpp. LLVMTargetMachine can intercept common passes and give precedence to command line overrides. Allows adding "internal" target configuration options without touching TargetOptions. Encapsulates the PassManager. Provides a good point to initialize all CodeGen passes so that Pass ID's can be used in APIs. Allows modifying the target configuration hooks without rebuilding the world.
llvm-svn: 149672
show more ...
|
#
a379b181 |
| 20-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch
llvm-svn: 146960
|
#
50f02cb2 |
| 02-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Move global variables in TargetMachine into new TargetOptions class. As an API change, now you need a TargetOptions object to create a TargetMachine. Clang patch to follow.
One small functionality c
Move global variables in TargetMachine into new TargetOptions class. As an API change, now you need a TargetOptions object to create a TargetMachine. Clang patch to follow.
One small functionality change in PTX. PTX had commented out the machine verifier parts in their copy of printAndVerify. That now calls the version in LLVMTargetMachine. Users of PTX who need verification disabled should rely on not passing the command-line flag to enable it.
llvm-svn: 145714
show more ...
|
Revision tags: llvmorg-3.0.0, llvmorg-3.0.0-rc4 |
|
#
ecb2908b |
| 16-Nov-2011 |
Evan Cheng <evan.cheng@apple.com> |
Sink codegen optimization level into MCCodeGenInfo along side relocation model and code model. This eliminates the need to pass OptLevel flag all over the place and makes it possible for any codegen
Sink codegen optimization level into MCCodeGenInfo along side relocation model and code model. This eliminates the need to pass OptLevel flag all over the place and makes it possible for any codegen pass to use this information.
llvm-svn: 144788
show more ...
|
Revision tags: llvmorg-3.0.0-rc3, llvmorg-3.0.0-rc2, llvmorg-3.0.0-rc1 |
|
#
3634f346 |
| 17-Oct-2011 |
Akira Hatanaka <ahatanaka@mips.com> |
Revert change made in r142205.
llvm-svn: 142217
|
#
e3f27b79 |
| 17-Oct-2011 |
Akira Hatanaka <ahatanaka@mips.com> |
Add definition of immZExt5_64 and redefine immZExt5 as an ImmLeaf.
llvm-svn: 142205
|
#
44419bfd |
| 14-Oct-2011 |
Akira Hatanaka <ahatanaka@mips.com> |
Add f128 to datalayout string.
llvm-svn: 141978
|
#
ff5d0965 |
| 27-Sep-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
Do not add the pass that restores $gp if target is Mips64.
llvm-svn: 140607
|
#
3d673cc3 |
| 21-Sep-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
Add a base class for Mips TargetMachines and add Mips64 TargetMachines.
llvm-svn: 140233
|
#
2bb40357 |
| 24-Aug-2011 |
Evan Cheng <evan.cheng@apple.com> |
Move TargetRegistry and TargetSelect from Target to Support where they belong. These are strictly utilities for registering targets and components.
llvm-svn: 138450
|
#
d1d9c786 |
| 21-Jul-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Added the infrastructute necessary for MIPS JIT support. Patch by Vladimir Stefanovic. I removed the part that actually emits the instructions cause I want that to get in better shape first and in in
Added the infrastructute necessary for MIPS JIT support. Patch by Vladimir Stefanovic. I removed the part that actually emits the instructions cause I want that to get in better shape first and in incremental steps. This also makes it easier to review the upcoming parts.
llvm-svn: 135678
show more ...
|
#
efd9b424 |
| 20-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
- Move CodeModel from a TargetMachine global option to MCCodeGenInfo. - Introduce JITDefault code model. This tells targets to set different default code model for JIT. This eliminates the ugly hac
- Move CodeModel from a TargetMachine global option to MCCodeGenInfo. - Introduce JITDefault code model. This tells targets to set different default code model for JIT. This eliminates the ugly hack in TargetMachine where code model is changed after construction.
llvm-svn: 135580
show more ...
|
#
2129f596 |
| 19-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Introduce MCCodeGenInfo, which keeps information that can affect codegen (including compilation, assembly). Move relocation model Reloc::Model from TargetMachine to MCCodeGenInfo so it's accessible e
Introduce MCCodeGenInfo, which keeps information that can affect codegen (including compilation, assembly). Move relocation model Reloc::Model from TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine.
llvm-svn: 135468
show more ...
|
#
1705ab00 |
| 14-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes.
llvm-svn: 135219
|
#
4d1ca96b |
| 08-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Eliminate asm parser's dependency on TargetMachine: - Each target asm parser now creates its own MCSubtatgetInfo (if needed). - Changed AssemblerPredicate to take subtarget features which tablegen us
Eliminate asm parser's dependency on TargetMachine: - Each target asm parser now creates its own MCSubtatgetInfo (if needed). - Changed AssemblerPredicate to take subtarget features which tablegen uses to generate asm matcher subtarget feature queries. e.g. "ModeThumb,FeatureThumb2" is translated to "(Bits & ModeThumb) != 0 && (Bits & FeatureThumb2) != 0".
llvm-svn: 134678
show more ...
|
#
fe6e405e |
| 30-Jun-2011 |
Evan Cheng <evan.cheng@apple.com> |
Fix the ridiculous SubtargetFeatures API where it implicitly expects CPU name to be the first encoded as the first feature. It then uses the CPU name to look up features / scheduling itineray even th
Fix the ridiculous SubtargetFeatures API where it implicitly expects CPU name to be the first encoded as the first feature. It then uses the CPU name to look up features / scheduling itineray even though clients know full well the CPU name being used to query these properties.
The fix is to just have the clients explictly pass the CPU name!
llvm-svn: 134127
show more ...
|