- Jan 30, 2008
-
-
Evan Cheng authored
Fixed a bug in MergeValueInAsValue() pointed out by David Greene. Replace val# with previous liverange's. llvm-svn: 46579
-
Evan Cheng authored
Treat the label for the first @llvm.dbg.stoppoint the same way as the dbg_func_start label. Make sure nothing else is inserted before them. Note this solution might be somewhat fragile since ISD::LABEL may be used for other purposes. If that ends up to be an issue, we may need to introduce a different node for debug labels. llvm-svn: 46571
-
Dale Johannesen authored
llvm-svn: 46569
-
Evan Cheng authored
A semi-gross fix for a debug info issue. When inserting the "function start" label (i.e. first label in the entry block) take care to insert it at the beginning of the block. llvm-svn: 46568
-
Dale Johannesen authored
legitimate way of representing global variable GV in debug info. llvm-svn: 46565
-
Evan Cheng authored
Even though InsertAtEndOfBasicBlock is an ugly hack it still deserves a proper name. Rename it to EmitInstrWithCustomInserter since it does not necessarily insert instruction at the end. llvm-svn: 46562
-
Dan Gohman authored
memory reference information in the backend. Most of this was written by Florian Brander, cleanup and updating to TOT by me. llvm-svn: 46556
-
Nick Lewycky authored
list just to see if whether the list is empty. llvm-svn: 46555
-
Nick Lewycky authored
llvm-svn: 46554
-
Nick Lewycky authored
llvm-svn: 46553
-
Evan Cheng authored
llvm-svn: 46546
-
Scott Michel authored
llvm-svn: 46545
-
Scott Michel authored
- Expand tabs... (poss 80-col violations, will get them later...) - Consolidate logic for SelectDFormAddr and SelectDForm2Addr into a single function, simplifying maintenance. Also reduced custom instruction generation for SPUvecinsert/INSERT_MASK. llvm-svn: 46544
-
Owen Anderson authored
Make DSE much more aggressive by performing DCE earlier. Update a testcase to reflect this increased aggressiveness. llvm-svn: 46542
-
Owen Anderson authored
of one of its internal maps. llvm-svn: 46541
-
Chris Lattner authored
In practice this can only happen on code with already undefined behavior, but this is still a good thing to handle correctly. llvm-svn: 46539
-
Dan Gohman authored
and StoreSDNode into their common base class LSBaseSDNode. Member functions getLoadedVT and getStoredVT are replaced with the common getMemoryVT to simplify code that will handle both loads and stores. llvm-svn: 46538
-
- Jan 29, 2008
-
-
Evan Cheng authored
Work in progress. This patch *fixes* x86-64 calls which are modelled as StructRet but really should be return in registers, e.g. _Complex long double, some 128-bit aggregates. This is a short term solution that is necessary only because llvm, for now, cannot model i128 nor call's with multiple results. Status: This only works for direct calls, and only the caller side is done. Disabled for now. llvm-svn: 46527
-
Duncan Sands authored
type that matters but the operand type. This fixes 2008-01-08-IllegalCMP.ll which crashed with the new legalize infrastructure because SETCC with result type i8 and operand type i64 was being custom expanded by the X86 backend. With this fix, the gcc build gets as far as the first libcall. llvm-svn: 46525
-
Chris Lattner authored
llvm-svn: 46523
-
Dan Gohman authored
llvm-svn: 46514
-
Dan Gohman authored
llvm-svn: 46513
-
Dan Gohman authored
llvm-svn: 46510
-
Dan Gohman authored
compiler warnings. llvm-svn: 46509
-
Dan Gohman authored
llvm-svn: 46508
-
Dan Gohman authored
llvm-svn: 46506
-
Chris Lattner authored
avoid turning -0.0 + 0.0 -> -0.0 which is incorrect. llvm-svn: 46499
-
Duncan Sands authored
to get the alignment of global variables, rather than using hand-made versions. llvm-svn: 46495
-
Owen Anderson authored
the handling of eliminating stores to byval arguments. llvm-svn: 46494
-
Owen Anderson authored
llvm-svn: 46488
-
Nate Begeman authored
llvm-svn: 46486
-
Dale Johannesen authored
llvm-svn: 46485
-
Devang Patel authored
These loops are not yet handled. Fix PR 1912. llvm-svn: 46484
-
Scott Michel authored
only two addressing mode nodes, SPUaform and SPUindirect (vice the three previous ones, SPUaform, SPUdform and SPUxform). This improves code somewhat because we now avoid using reg+reg addressing when it can be avoided. It also simplifies the address selection logic, which was the main point for doing this. Also, for various global variables that would be loaded using SPU's A-form addressing, prefer D-form offs[reg] addressing, keeping the base in a register if the variable is used more than once. llvm-svn: 46483
-
- Jan 28, 2008
-
-
Lauro Ramos Venancio authored
llvm-svn: 46458
-
Lauro Ramos Venancio authored
llvm-svn: 46455
-
Bill Wendling authored
the function label isn't associated with something it shouldn't be. llvm-svn: 46449
-
Chris Lattner authored
llvm-svn: 46433
-
Nick Lewycky authored
llvm-svn: 46431
-
Chris Lattner authored
llvm-svn: 46429
-