- Apr 08, 2009
-
-
Misha Brukman authored
* Converted C-style casts to C++-style casts llvm-svn: 68613
-
Douglas Gregor authored
Fixes <rdar://problem/6759522> llvm-svn: 68611
-
Douglas Gregor authored
llvm-svn: 68610
-
Duncan Sands authored
llvm-svn: 68607
-
Rafael Espindola authored
llvm-svn: 68603
-
Sanjiv Gupta authored
Emit .line debug directives for stoppoints. The debug location is retrieved by the MachineInstr itself, rather than by custom handling the DBG_STOPPOINT nodes. llvm-svn: 68602
-
Daniel Dunbar authored
g++. llvm-svn: 68601
-
Chris Lattner authored
llvm-svn: 68600
-
Chris Lattner authored
llvm-svn: 68599
-
Chris Lattner authored
integer types, unless they are already strange. This prevents it from turning the code produced by SROA into crazy libcalls and stuff that the code generator can't handle. In the attached example, the result was an i96 multiply that caused the x86 backend to assert. Note that if TargetData had an idea of what the legal types are for a target that this could be used to stop instcombine from introducing i64 muls, as Scott wanted. llvm-svn: 68598
-
Sanjiv Gupta authored
Every function has the address of its frame in the beginning of code section. The frame address is retrieved and used to pass arguments. llvm-svn: 68597
-
Daniel Dunbar authored
- This is pretty ugly, but the most obvious solution. Chime in if you have a nicer one. - The problem is that with -save-temps, clang-cc has no idea what the name of the original input file is. However, the user expects to be able to set breakpoints based on the input file name. - We support this by providing a new option -main-file-name (similar to -dumpbase used by gcc) which allows the driver to pass in the original file name. - <rdar://problem/6753383> building with clang using --save-temps gets the compile unit name from the .i file... llvm-svn: 68595
-
Ted Kremenek authored
llvm-svn: 68594
-
Anders Carlsson authored
Add a destination type argument to EmitConstantExpr. This will be used for when the destination has a reference type. (No functionality change yet) llvm-svn: 68593
-
Chris Lattner authored
a testcase I'm about to attach to that pr. llvm-svn: 68592
-
Daniel Dunbar authored
- Complete <rdar://problem/6635883> Support __objc_exception__ attribute llvm-svn: 68591
-
Sanjiv Gupta authored
Pointer width on targets like PIC16 is 16-bit, while the valid index size to GEP is only 32 or 64. So promote index to 32 in such cases. llvm-svn: 68590
-
Chris Lattner authored
llvm-svn: 68589
-
Chris Lattner authored
abstraction for CommandLine. llvm-svn: 68588
-
Chris Lattner authored
llvm-svn: 68587
-
Chris Lattner authored
llvm-svn: 68586
-
Ted Kremenek authored
"The attached patch generates warnings of cases where an ObjC message is sent to a nil object and the size of return type of that message is larger than the size of void pointer. This may result in undefined return values as described in PR 2718. The patch also includes test cases." llvm-svn: 68585
-
Daniel Dunbar authored
- Add -pic-level clang-cc option to specify the value for the define, updated driver to pass this. - Added __pic__ - Added OBJC_ZEROCOST_EXCEPTIONS define while I was here (to match gcc). llvm-svn: 68584
-
-
Mike Stump authored
llvm-svn: 68582
-
Dan Gohman authored
llvm-svn: 68580
-
Dan Gohman authored
using an lea in place of a mov and an add for this test. llvm-svn: 68579
-
Chris Lattner authored
avoiding sign extension for the top octet. For "negative" chars, we'd print stuff like: .asciz "\702... now we print: .asciz "\302... llvm-svn: 68577
-
Dan Gohman authored
with SUBREG_TO_REG, teach SimpleRegisterCoalescing to coalesce SUBREG_TO_REG instructions (which are similar to INSERT_SUBREG instructions), and teach the DAGCombiner to take advantage of this on targets which support it. This eliminates many redundant zero-extension operations on x86-64. This adds a new TargetLowering hook, isZExtFree. It's similar to isTruncateFree, except it only applies to actual definitions, and not no-op truncates which may not zero the high bits. Also, this adds a new optimization to SimplifyDemandedBits: transform operations like x+y into (zext (add (trunc x), (trunc y))) on targets where all the casts are no-ops. In contexts where the high part of the add is explicitly masked off, this allows the mask operation to be eliminated. Fix the DAGCombiner to avoid undoing these transformations to eliminate casts on targets where the casts are no-ops. Also, this adds a new two-address lowering heuristic. Since two-address lowering runs before coalescing, it helps to be able to look through copies when deciding whether commuting and/or three-address conversion are profitable. Also, fix a bug in LiveInterval::MergeInClobberRanges. It didn't handle the case that a clobber range extended both before and beyond an existing live range. In that case, multiple live ranges need to be added. This was exposed by the new subreg coalescing code. Remove 2008-05-06-SpillerBug.ll. It was bugpoint-reduced, and the spiller behavior it was looking for no longer occurrs with the new instruction selection. llvm-svn: 68576
-
Daniel Dunbar authored
llvm-svn: 68570
-
Devang Patel authored
llvm-svn: 68569
-
-
Daniel Dunbar authored
llvm-svn: 68561
-
Bill Wendling authored
builds. --- Reverse-merging (from foreign repository) r68552 into '.': U test/CodeGen/X86/tls8.ll U test/CodeGen/X86/tls10.ll U test/CodeGen/X86/tls2.ll U test/CodeGen/X86/tls6.ll U lib/Target/X86/X86Instr64bit.td U lib/Target/X86/X86InstrSSE.td U lib/Target/X86/X86InstrInfo.td U lib/Target/X86/X86RegisterInfo.cpp U lib/Target/X86/X86ISelLowering.cpp U lib/Target/X86/X86CodeEmitter.cpp U lib/Target/X86/X86FastISel.cpp U lib/Target/X86/X86InstrInfo.h U lib/Target/X86/X86ISelDAGToDAG.cpp U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp U lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.h U lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.h U lib/Target/X86/X86ISelLowering.h U lib/Target/X86/X86InstrInfo.cpp U lib/Target/X86/X86InstrBuilder.h U lib/Target/X86/X86RegisterInfo.td llvm-svn: 68560
-
Devang Patel authored
Right now DBG_LABEL are required for llvm.dbg.region_start and llvm.dbg.region_end in non-fast mode also. llvm-svn: 68559
-
Daniel Dunbar authored
multiple instances of an option. Also, removed direct -ansi support from clang-cc. llvm-svn: 68558
-
Anders Carlsson authored
llvm-svn: 68557
-
- Apr 07, 2009
-
-
Daniel Dunbar authored
- Groups are really just intended to hold inherent structure of the options, not be abused for individual tool argument translation. llvm-svn: 68554
-
Daniel Dunbar authored
-isysroot to clang. - Don't forward arbitrary -i* options to clang, just the ones we know about. llvm-svn: 68553
-
Rafael Espindola authored
This introduces a small regression on the generated code quality in the case we are just computing addresses, not loading values. Will work on it and on X86-64 support. llvm-svn: 68552
-