- Jul 15, 2008
-
-
Matthijs Kooijman authored
llvm-svn: 53614
-
Duncan Sands authored
llvm-svn: 53613
-
Matthijs Kooijman authored
allowed to canonicalize return values). Add a test that checks if return value and function attributes are not removed. llvm-svn: 53612
-
Matthijs Kooijman authored
llvm-svn: 53611
-
Matthijs Kooijman authored
again canonicalizes {i32} into i32 and {} into void. llvm-svn: 53610
-
Matthijs Kooijman authored
return value as a whole in deadargelim is really not needed now that we simply rebuild the old return value and actually prevents some canonicalization from taking place. This revert stops deadargelim from changing {i32} into i32 for now, but I'll fix that next. llvm-svn: 53609
-
Matthijs Kooijman authored
return values that are still (partially) live. Instead of updating all uses of a call instruction after removing some elements, it now just rebuilds the original struct (With undef gaps where the unused values were) and leaves it to instcombine to clean this up. The added testcase still fails currently, but this is due to instcombine which isn't good enough yet. I will fix that part next. llvm-svn: 53608
-
Matthijs Kooijman authored
llvm-svn: 53607
-
Matthijs Kooijman authored
only the liveness of partial return values (for functions returning a struct). This is more explicit to prevent unwanted changes in the return value. In particular, deadargelim now canonicalizes a function returning {i32} to returning i32 and {} to void, if the struct returned is not used in its entirety, but only the single element is used. llvm-svn: 53606
-
Matthijs Kooijman authored
llvm-svn: 53605
-
Duncan Sands authored
In LegalizeDAG the value is zero-extended to the new type before byte swapping. It doesn't matter how the extension is done since the new bits are shifted off anyway after the swap, so extend by any old rubbish bits. This results in the final assembler for the testcase being one line shorter. llvm-svn: 53604
-
Duncan Sands authored
llvm-svn: 53603
-
Duncan Sands authored
No change in functionality. llvm-svn: 53602
-
Matthijs Kooijman authored
and return values live for those functions. This doesn't change anything yet, but prepares for the coming commits. llvm-svn: 53601
-
Matthijs Kooijman authored
llvm-svn: 53600
-
Matthijs Kooijman authored
RetOrArg::getDescription() as const. llvm-svn: 53599
-
Matthijs Kooijman authored
llvm-svn: 53598
-
Matthijs Kooijman authored
llvm-svn: 53592
-
Matthijs Kooijman authored
method, to slightly simplify control flow. llvm-svn: 53591
-
Mon P Wang authored
llvm-svn: 53590
-
Nick Lewycky authored
I swear that didn't show up in svn diff... llvm-svn: 53587
-
Nick Lewycky authored
llvm-svn: 53586
-
Bruno Cardoso Lopes authored
llvm-svn: 53585
-
Devang Patel authored
LinkOnce definitions have default scope, like weak definitions. Otherwise, the linker may not be able to match LinkOnce definition from one module with an exteranl reference from other module. llvm-svn: 53580
-
Evan Cheng authored
llvm-svn: 53574
-
- Jul 14, 2008
-
-
Chris Lattner authored
Patch by Nicolas Capens! llvm-svn: 53571
-
Dan Gohman authored
the BB member to the current basic block after emitting instructions. llvm-svn: 53567
-
Dan Gohman authored
llvm-svn: 53564
-
Dan Gohman authored
don't have value names, so use print instead of getName() to get a useful string. llvm-svn: 53563
-
Dan Gohman authored
llvm-svn: 53562
-
Dan Gohman authored
llvm-svn: 53561
-
Duncan Sands authored
Remove support for this. llvm-svn: 53559
-
Duncan Sands authored
non-power-of-two vectors. llvm-svn: 53558
-
Chris Lattner authored
llvm-svn: 53557
-
Duncan Sands authored
than the vector element type. Don't forget to handle this when the insertion index is not a constant. llvm-svn: 53556
-
Duncan Sands authored
extending load of a vector. Handle this case when splitting vector loads. I'm not completely sure what is supposed to happen, but I think it means hi should be set to undef. LegalizeDAG does not consider this case. llvm-svn: 53555
-
Duncan Sands authored
stores of one-element vectors. Also, neaten the handling of INSERT_VECTOR_ELT when the inserted type is larger than the vector element type. llvm-svn: 53554
-
Duncan Sands authored
are used for passing huge immediates in inline ASM from the front-end straight down to the ASM writer. Of course this is a hack, but it is simple, limited in scope, works in practice, and is what LegalizeDAG does. llvm-svn: 53553
-
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
-
Duncan Sands authored
llvm-svn: 53549
-