- Feb 25, 2008
-
-
Evan Cheng authored
llvm-svn: 47545
-
Owen Anderson authored
not safe. This is fixed by more aggressively checking that the return slot is not used elsewhere in the function. llvm-svn: 47544
-
Chris Lattner authored
llvm-svn: 47543
-
Evan Cheng authored
llvm-svn: 47542
-
Owen Anderson authored
Fix an issue where GVN would try to use an instruction before its definition when performing return slot optimization. llvm-svn: 47541
-
- Feb 24, 2008
-
-
Chris Lattner authored
llvm-svn: 47540
-
Chris Lattner authored
llvm-svn: 47539
-
Steve Naroff authored
Move the initialization of SEL/objc_selector from Sema::Sema() to Sema::ActOnTranslationUnitScope() and make sure the type/struct get inserted into the translation unit scope. Bug submitted by David Chisnall (thanks!). llvm-svn: 47538
-
Duncan Sands authored
out of illegal elements (BUILD_VECTOR). Uses and beefs up BUILD_PAIR, though it didn't really have to. Like most of LegalizeTypes, does not support soft-float. This cures all "make check" vector building failures. llvm-svn: 47537
-
Ted Kremenek authored
- More enum signeness bitfield fixes (MSVC treats enums as signed). - Fixed in Lex/HeaderSearch.cpp an unsafe copy between two HeaderSearch::PerFileInfo entries in a common vector. The copy involved two calls to getFileInfo() within the assignment; these calls could have side-effects that enlarged the internal vector, and with MSVC this would invalidate one of the values in the assignment. Patch by Argiris Kirtzidis! llvm-svn: 47536
-
Ted Kremenek authored
since inodes are bogus abstraction on that platform. Patch by Argiris Kirtzidis! llvm-svn: 47535
-
Bill Wendling authored
%r3 on PPC) in their ASM files. However, it's hard for humans to read during debugging. Adding a new field to the register data that lets you specify a different name to be printed than the one that goes into the ASM file -- %x3 instead of %r3, for instance. llvm-svn: 47534
-
- Feb 23, 2008
-
-
Evan Cheng authored
llvm-svn: 47533
-
Scott Michel authored
for CellSPU modifications: - SPUInstrInfo.td refactoring: "multiclass" really is _your_ friend. - Other improvements based on refactoring effort in SPUISelLowering.cpp, esp. in SPUISelLowering::PerformDAGCombine(), where zero amount shifts and rotates are now eliminiated, other scalar-to-vector-to-scalar silliness is also eliminated. - 64-bit operations are being implemented, _muldi3.c gcc runtime now compiles and generates the right code. More work still needs to be done. llvm-svn: 47532
-
Zhou Sheng authored
llvm-svn: 47531
-
Eli Friedman authored
llvm-svn: 47530
-
Evan Cheng authored
llvm-svn: 47529
-
Evan Cheng authored
llvm-svn: 47527
-
Evan Cheng authored
If remating a machine instr with virtual register operand, make sure the vr is avaliable at all uses regardless of whether it would be folded. llvm-svn: 47526
-
Evan Cheng authored
llvm-svn: 47525
-
Evan Cheng authored
llvm-svn: 47524
-
Dan Gohman authored
invalid command-line options. llvm-svn: 47523
-
Evan Cheng authored
No need recognize load from a fixed argument slot as re-materializable. LiveIntervalAnalysis already handles it as a special case. llvm-svn: 47522
-
Devang Patel authored
llvm-svn: 47521
-
Evan Cheng authored
Recognize loads of arguments as re-materializable first. Therefore if isReallyTriviallyReMaterializable() returns true it doesn't confuse it as a "normal" re-materializable instruction. llvm-svn: 47520
-
Devang Patel authored
llvm-svn: 47519
-
Devang Patel authored
llvm-svn: 47518
-
Ted Kremenek authored
llvm-svn: 47517
-
Devang Patel authored
llvm-svn: 47516
-
Ted Kremenek authored
instead of TokenKind because of signedness issues with MSVC and enums. Patch from Argiris Kirtzidis. llvm-svn: 47515
-
Devang Patel authored
llvm-svn: 47514
-
Evan Cheng authored
llvm-svn: 47513
-
Ted Kremenek authored
The patch fixes some debug assertions that the msvcrt throws: 1) - if (isprint(value) && value < 256) { + if (value < 256 && isprint(value)) { isprint() does an assertion check of its own for value < 256; check value before calling it to prevent it. 2) - Stmt->Names.push_back(std::string(&data[0], data.size())); + if (data.size() == 0) + Stmt->Names.push_back(std::string()); + else + Stmt->Names.push_back(std::string(&data[0], data.size())); If data.size() == 0 then data[0] throws "out of range" assertion. llvm-svn: 47512
-
Devang Patel authored
llvm-svn: 47511
-
Evan Cheng authored
llvm-svn: 47510
-
Devang Patel authored
llvm-svn: 47509
-
Devang Patel authored
To support multiple return values, now ret instruction supports multiple operands instead of one aggregate operand. llvm-svn: 47508
-
Evan Cheng authored
llvm-svn: 47507
-
Ted Kremenek authored
confluence points the liveness information for variables (Decls) and NOT block-level expressions. llvm-svn: 47506
-
- Feb 22, 2008
-
-
Dale Johannesen authored
stuff into ParamAttrsList.h. Per feedback from ParamAttrs changes. llvm-svn: 47504
-