- May 12, 2012
-
-
Akira Hatanaka authored
- Stop emitting instructions needed to initialize the global pointer register. - Stop emitting .cprestore directive. - Do not take into account the $gp save slot when computing stack size. llvm-svn: 156691
-
- Apr 20, 2012
-
-
Craig Topper authored
Convert more uses of XXXRegisterClass to &XXXRegClass. No functional change since they are equivalent. llvm-svn: 155188
-
- Mar 28, 2012
-
-
Akira Hatanaka authored
them as machine instructions. Directives ".set noat" and ".set at" are now emitted only at the beginning and end of a function except in the case where they are emitted to enclose .cpload with an immediate operand that doesn't fit in 16-bit field or unaligned load/stores. Also, make the following changes: - Remove function isUnalignedLoadStore and use a switch-case statement to determine whether an instruction is an unaligned load or store. - Define helper function CreateMCInst which generates an instance of an MCInst from an opcode and a list of operands. llvm-svn: 153552
-
- Mar 17, 2012
-
-
Craig Topper authored
Reorder includes in Target backends to following coding standards. Remove some superfluous forward declarations. llvm-svn: 152997
-
- Mar 05, 2012
-
-
Craig Topper authored
llvm-svn: 152016
-
- Feb 28, 2012
-
-
Jia Liu authored
llvm-svn: 151625
-
- Feb 24, 2012
-
-
Akira Hatanaka authored
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
-
- Feb 17, 2012
-
-
Jia Liu authored
llvm-svn: 150805
-
- Jan 25, 2012
-
-
Akira Hatanaka authored
llvm-svn: 148918
-
Akira Hatanaka authored
- Use MipsAnalyzeImmediate to expand immediates that do not fit in 16-bit. - Change the types of variables so that they are sufficiently large to handle 64-bit pointers. - Emit instructions to set register $28 in a function prologue after instructions which store callee-saved registers have been emitted. llvm-svn: 148917
-
- Dec 02, 2011
-
-
Nick Lewycky authored
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
-
- Nov 15, 2011
-
-
Akira Hatanaka authored
registers and instructions when ABI is N64. llvm-svn: 144666
-
Akira Hatanaka authored
register. llvm-svn: 144665
-
- Nov 14, 2011
-
-
Akira Hatanaka authored
argument registers on the callee's stack frame, along with functions that set and get it. It is not necessary to add the size of this area when computing stack size in emitPrologue, since it has already been accounted for in PEI::calculateFrameObjectOffsets. llvm-svn: 144549
-
- Nov 11, 2011
-
-
Bruno Cardoso Lopes authored
"With this patch we can now generate runnable Mips code through LLVM direct object emission. We have run numerous simple programs, both C and C++ and with -O0 and -O3 from the output. The code is not production ready, but quite useful for experimentation." Patch and message by Jack Carter llvm-svn: 144414
-
Akira Hatanaka authored
llvm-svn: 144367
-
- Nov 07, 2011
-
-
Akira Hatanaka authored
llvm-svn: 143993
-
- Aug 12, 2011
-
-
Akira Hatanaka authored
warning. llvm-svn: 137378
-
- Jul 19, 2011
-
-
Evan Cheng authored
better location welcome). llvm-svn: 135438
-
- Jun 07, 2011
-
-
Akira Hatanaka authored
- Fix indentation. - Move comments. - Fit lines in 80 columns. - Remove dead code. llvm-svn: 132724
-
Akira Hatanaka authored
Add test case for C++ exception handling and fix the following mistakes in MipsFrameLowering::emitPrologue: - cfi directives are not inserted at the right location or in the right order. - The source MachineLocation for the cfi directive that changes the cfa register to $fp should be MachineLocation::VirtualFP. - A PROLOG_LABEL that marks the beginning of cfi_offset directives for callee-saved register is emitted even when no callee-saved registers are saved. - When a callee-saved double precision register is saved, two cfi_offset directives, one for each of the paired single precision registers, should be emitted. llvm-svn: 132703
-
- Jun 02, 2011
-
-
Akira Hatanaka authored
llvm-svn: 132444
-
- May 26, 2011
-
-
Akira Hatanaka authored
a function has any function calls. llvm-svn: 132140
-
Akira Hatanaka authored
llvm-svn: 132131
-
- May 25, 2011
-
-
Akira Hatanaka authored
return 0 if there are no function calls made. llvm-svn: 132065
-
- May 24, 2011
-
-
Akira Hatanaka authored
offsets that are larger than 0x10000. llvm-svn: 132003
-
- May 23, 2011
-
-
Akira Hatanaka authored
The following improvements are accomplished as a result of applying this patch: - Fixed frame objects' offsets (relative to either the virtual frame pointer or the stack pointer) are set before instruction selection is completed. There is no need to wait until Prologue/Epilogue Insertion is run to set them. - Calculation of final offsets of fixed frame objects is straightforward. It is no longer necessary to assign negative offsets to fixed objects for incoming arguments in order to distinguish them from the others. - Since a fixed object has its relative offset set during instruction selection, there is no need to conservatively set its alignment to 4. - It is no longer necessary to reorder non-fixed frame objects in MipsFrameLowering::adjustMipsStackFrame. llvm-svn: 131915
-
- May 21, 2011
-
-
Akira Hatanaka authored
llvm-svn: 131784
-
- May 20, 2011
-
-
Akira Hatanaka authored
saving and restoring them. llvm-svn: 131745
-
- Apr 15, 2011
-
-
Akira Hatanaka authored
llvm-svn: 129612
-
Akira Hatanaka authored
Fix lines that have incorrect indentation or exceed 80 columns. There is no change in functionality. llvm-svn: 129606
-
Chris Lattner authored
Luis Felipe Strano Moraes! llvm-svn: 129558
-
- Apr 07, 2011
-
-
Akira Hatanaka authored
llvm-svn: 129105
-
Akira Hatanaka authored
llvm-svn: 129104
-
- Mar 04, 2011
-
-
Bill Wendling authored
llvm-svn: 127038
-
Bruno Cardoso Lopes authored
Expands register/immediate pairs when the immediate is too large to fit in 16-bit field. Patch by Akira Hatanaka llvm-svn: 127032
-
- Jan 18, 2011
-
-
Bruno Cardoso Lopes authored
llvm-svn: 123768
-
- Jan 13, 2011
-
-
Jakob Stoklund Olesen authored
llvm-svn: 123399
-
- Jan 10, 2011
-
-
Anton Korobeynikov authored
Rename TargetFrameInfo into TargetFrameLowering. Also, put couple of FIXMEs and fixes here and there. llvm-svn: 123170
-
- Nov 18, 2010
-
-
Anton Korobeynikov authored
llvm-svn: 119740
-