- Dec 13, 2008
-
-
rdar://problem/6442306Ted Kremenek authored
GRExprEngine (VisitCast): - When using StoreManager::CastRegion, always use the state and value it returns to generate the next node. Failure to do so means that region values returned that don't require the state to be modified will get ignored. MemRegion: - Tighten the interface for ElementRegion. Now ElementRegion can only be created with a super region that is a 'TypedRegion' instead of any MemRegion. Code in BasicStoreManager/RegionStoreManager already assumed this, but it would result in a dynamic assertion check (and crash) rather than just having the compiler forbid the construction of such regions. - Added ElementRegion::getArrayRegion() to return the 'typed version' of an ElementRegion's super region. - Removed bogus assertion in ElementRegion::getType() that assumed that the super region was an AnonTypedRegion. All that matters is that it is a TypedRegion, which is now true all the time by design. BasicStore: - Modified getLValueElement() to check if the 'array' region is a TypedRegion before creating an ElementRegion. This conforms to the updated interface for ElementRegion. RegionStore: - In ArrayToPointer() gracefully handle things we don't reason about, and only create an ElementRegion if the array region is indeed a TypedRegion. llvm-svn: 60990
-
Chris Lattner authored
llvm-svn: 60989
-
Chris Lattner authored
llvm-svn: 60988
-
Chris Lattner authored
llvm-svn: 60987
-
Chris Lattner authored
NDEBUG is unset and -debug is passed. llvm-svn: 60986
-
Mikhail Glushenkov authored
llvm-svn: 60985
-
Mikhail Glushenkov authored
llvm-svn: 60984
-
Sebastian Redl authored
llvm-svn: 60983
-
Sebastian Redl authored
llvm-svn: 60982
-
Sebastian Redl authored
stdlib.h is the wrong header for printf, and introduces test-breaking definitions of inlines on Linux llvm-svn: 60981
-
Cedric Venet authored
This allow to use the new move emulation for smart pointer by disabling language extension. llvm-svn: 60979
-
Cedric Venet authored
These call are probably dependent but VS with /Za don't seems to think so. We need to help him. llvm-svn: 60978
-
Bill Wendling authored
llvm[2]: Linking Release executable opt (without symbols) ... Undefined symbols: "llvm::APFloat::IEEEsingle", referenced from: __ZN4llvm7APFloat10IEEEsingleE$non_lazy_ptr in libLLVMCore.a(Constants.o) __ZN4llvm7APFloat10IEEEsingleE$non_lazy_ptr in libLLVMCore.a(AsmWriter.o) __ZN4llvm7APFloat10IEEEsingleE$non_lazy_ptr in libLLVMCore.a(ConstantFold.o) "llvm::APFloat::IEEEdouble", referenced from: __ZN4llvm7APFloat10IEEEdoubleE$non_lazy_ptr in libLLVMCore.a(Constants.o) __ZN4llvm7APFloat10IEEEdoubleE$non_lazy_ptr in libLLVMCore.a(AsmWriter.o) __ZN4llvm7APFloat10IEEEdoubleE$non_lazy_ptr in libLLVMCore.a(ConstantFold.o) ld: symbol(s) not found This is in release mode. To replicate, compile llvm and llvm-gcc in optimized mode. Then build llvm, in optimized mode, with the newly created compiler. llvm-svn: 60977
-
Torok Edwin authored
Add missing DIType constructor, needed by DIVariable::getType(). llvm-svn: 60976
-
Mon P Wang authored
llvm-svn: 60975
-
Mon P Wang authored
llvm-svn: 60974
-
Chris Lattner authored
a pretification of the IR. llvm-svn: 60973
-
Duncan Sands authored
width register load followed by a truncating store for the copy, since the load will not place the value in the lower bits. Probably partial loads/stores can never happen here, but fix it anyway. llvm-svn: 60972
-
Misha Brukman authored
llvm-svn: 60971
-
Mikhail Glushenkov authored
llvm-svn: 60970
-
Mikhail Glushenkov authored
llvm-svn: 60969
-
- Dec 12, 2008
-
-
Devang Patel authored
llvm-svn: 60968
-
Ted Kremenek authored
PTH: Added minor 'sibling jumping' optimization for iterating over the side table used for fast preprocessor block skipping. This has a minor performance improvement when preprocessing Cocoa.h, but can have some wins in pathologic cases. llvm-svn: 60966
-
Devang Patel authored
llvm-svn: 60965
-
Duncan Sands authored
use of illegal integer types: instead, use a stack slot and copying via integer registers. The existing code is still used if the bitconvert is to a legal integer type. This fires on the PPC testcases 2007-09-08-unaligned.ll and vec_misaligned.ll. It looks like equivalent code is generated with these changes, just permuted, but it's hard to tell. With these changes, nothing in LegalizeDAG produces illegal integer types anymore. This is a prerequisite for removing the LegalizeDAG type legalization code. While there I noticed that the existing code doesn't handle trunc store of f64 to f32: it turns this into an i64 store, which represents a 4 byte stack smash. I added a FIXME about this. Hopefully someone more motivated than I am will take care of it. llvm-svn: 60964
-
Bill Wendling authored
which are identical to the original patterns. - Change the multiply with overflow so that we distinguish between signed and unsigned multiplication. Currently, unsigned multiplication with overflow isn't working! llvm-svn: 60963
-
-
-
Daniel Dunbar authored
working with and without debug info). llvm-svn: 60960
-
Devang Patel authored
llvm-svn: 60959
-
Evan Cheng authored
Fix add/sub expansion: don't create ADD / SUB with two results (seems like everyone is doing this these days :-). Patch by Daniel M Gessel! llvm-svn: 60958
-
Daniel Dunbar authored
Only use major part of OS version when on darwin and modifying OS part of target triple. llvm-svn: 60957
-
Ted Kremenek authored
Added PTH optimization to not process entire blocks of tokens that appear in skipped preprocessor blocks. This improves PTH speed by 6%. The code for this optimization itself is not very optimized, and will get cleaned up. llvm-svn: 60956
-
Ted Kremenek authored
llvm-svn: 60955
-
Chris Lattner authored
processing: it allows arbitrary foldable constants as the operand of ?: when builtin_constant_p is the condition. llvm-svn: 60954
-
Nick Lewycky authored
llvm-svn: 60951
-
Douglas Gregor authored
llvm-svn: 60947
-
Duncan Sands authored
do an extending load of the 4 bytes rather than a potentially illegal (type) i32 load followed by a sign extend. llvm-svn: 60945
-
Duncan Sands authored
lowering f64 function arguments. llvm-svn: 60944
-
Anders Carlsson authored
llvm-svn: 60943
-