- Aug 08, 2008
-
-
Evan Cheng authored
It's not legal to output a GV in a coalesced section if it's used in an ARM PIC relative constantpool. llvm-svn: 54519
-
Bruno Cardoso Lopes authored
llvm-svn: 54516
-
Bruno Cardoso Lopes authored
llvm-svn: 54514
-
- Aug 07, 2008
-
-
Bruno Cardoso Lopes authored
Fixed bug in adjustMipsStackFrame, which was breaking while trying to access a dead stack object index. Also added one more alignment before fixing the callee saved registers stack offset adjustment. llvm-svn: 54485
-
Anton Korobeynikov authored
llvm-svn: 54456
-
Anton Korobeynikov authored
llvm-svn: 54451
-
- Aug 06, 2008
-
-
Bruno Cardoso Lopes authored
Added fp register clobbering during calls. Added AsmPrinter support for "fmask", a bitmask that indicates where on the stack the fp callee saved registers are. Fixed the stack frame layout for Mips, now the callee saved regs are in the right stack location (a little documentation about how this stack frame must look like is present in MipsRegisterInfo.cpp). This was done using the method MipsRegisterInfo::adjustMipsStackFrame To be more clear, these are examples of what is solves : 1) FP and RA are also callee saved, and despite they aren't in CSI they must be saved before the fp callee saved registers. 2) The ABI requires that local varibles are allocated before the callee saved register area, the opposite behavior from the default allocation. 3) CPU and FPU saved register area must be aligned independent of each other. llvm-svn: 54403
-
- Aug 05, 2008
-
-
Dan Gohman authored
llvm-svn: 54350
-
- Aug 04, 2008
-
-
Bruno Cardoso Lopes authored
aren't used anyway, they also used to broke compiling when fastcc was specified for a function, but not anymore. llvm-svn: 54316
-
Bruno Cardoso Lopes authored
llvm-svn: 54315
-
- Aug 03, 2008
-
-
Bruno Cardoso Lopes authored
llvm-svn: 54312
-
- Aug 02, 2008
-
-
Bruno Cardoso Lopes authored
Added hi,lo registers to be used,def implicitly. This provides better handle of instructions which use hi/lo. Fixes a small BranchAnalysis bug llvm-svn: 54274
-
Bruno Cardoso Lopes authored
llvm-svn: 54273
-
- Jul 31, 2008
-
-
Bruno Cardoso Lopes authored
llvm-svn: 54250
-
Bruno Cardoso Lopes authored
the default legalizer. llvm-svn: 54249
-
- Jul 30, 2008
-
-
Bruno Cardoso Lopes authored
access). Added pattern to match bitconvert node. Fixed MTC1 asm string bug. llvm-svn: 54229
-
Bruno Cardoso Lopes authored
llvm-svn: 54215
-
Bruno Cardoso Lopes authored
llvm-svn: 54214
-
Bruno Cardoso Lopes authored
llvm-svn: 54213
-
Bruno Cardoso Lopes authored
llvm-svn: 54212
-
- Jul 29, 2008
-
-
Bruno Cardoso Lopes authored
llvm-svn: 54169
-
Bruno Cardoso Lopes authored
llvm-svn: 54167
-
- Jul 28, 2008
-
-
Bruno Cardoso Lopes authored
llvm-svn: 54142
-
Bruno Cardoso Lopes authored
Fixed COMM asm directive usage. ConstantPool using custom FourByteConstantSection. llvm-svn: 54139
-
- Jul 27, 2008
-
-
Dan Gohman authored
llvm-svn: 54128
-
- Jul 23, 2008
-
-
Bruno Cardoso Lopes authored
Added ConstantPool support. llvm-svn: 53951
-
- Jul 22, 2008
-
-
Bruno Cardoso Lopes authored
llvm-svn: 53912
-
Bruno Cardoso Lopes authored
Fixed small bug. llvm-svn: 53908
-
- Jul 21, 2008
-
-
Bruno Cardoso Lopes authored
Added gp_rel relocations to support addressing small section contents. Added command line to specify small section threshold in bytes. llvm-svn: 53869
-
- Jul 19, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 53791
-
Anton Korobeynikov authored
llvm-svn: 53790
-
- Jul 17, 2008
-
-
Dan Gohman authored
replacement of multiple values. This is slightly more efficient than doing multiple ReplaceAllUsesOfValueWith calls, and theoretically could be optimized even further. However, an important property of this new function is that it handles the case where the source value set and destination value set overlap. This makes it feasible for isel to use SelectNodeTo in many very common cases, which is advantageous because SelectNodeTo avoids a temporary node and it doesn't require CSEMap updates for users of values that don't change position. Revamp MorphNodeTo, which is what does all the work of SelectNodeTo, to handle operand lists more efficiently, and to correctly handle a number of corner cases to which its new wider use exposes it. This commit also includes a change to the encoding of post-isel opcodes in SDNodes; now instead of being sandwiched between the target-independent pre-isel opcodes and the target-dependent pre-isel opcodes, post-isel opcodes are now represented as negative values. This makes it possible to test if an opcode is pre-isel or post-isel without having to know the size of the current target's post-isel instruction set. These changes speed up llc overall by 3% and reduce memory usage by 10% on the InstructionCombining.cpp testcase with -fast and -regalloc=local. llvm-svn: 53728
-
- Jul 15, 2008
-
-
Bruno Cardoso Lopes authored
llvm-svn: 53585
-
- Jul 14, 2008
-
-
Bruno Cardoso Lopes authored
Added HasABICall and HasAbsoluteCall (equivalent to gcc -mabicall and -mno-shared). HasAbsoluteCall is not implemented but HasABICall is the default for o32 ABI. Now, both should help into a more accurate relocation types implementation. Added IsLinux is needed to choose between asm directives. Instruction name strings cleanup. AsmPrinter improved. llvm-svn: 53551
-
- Jul 09, 2008
-
-
Bill Wendling authored
llvm-svn: 53278
-
Bruno Cardoso Lopes authored
llvm-svn: 53277
-
Bruno Cardoso Lopes authored
llvm-svn: 53272
-
Bruno Cardoso Lopes authored
llvm-svn: 53270
-
- Jul 08, 2008
-
-
Duncan Sands authored
llvm-svn: 53227
-
Dan Gohman authored
MachineMemOperands. The pools are owned by MachineFunctions. This drastically reduces the number of calls to malloc/free made during the "Emit" phase of scheduling, as well as later phases in CodeGen. Combined with other changes, this speeds up the "instruction selection" phase of CodeGen by 10% in some cases. llvm-svn: 53212
-