- Mar 24, 2010
-
-
Dan Gohman authored
llvm-svn: 99416
-
Johnny Chen authored
NVCVTFrm will later be used to describe "vcvt with fractional bits". llvm-svn: 99415
-
Dan Gohman authored
llvm-svn: 99414
-
Dan Gohman authored
raw_ostream variables immediately before they go out of scope. llvm-svn: 99413
-
Devang Patel authored
llvm-svn: 99410
-
Johnny Chen authored
N3VX instructions using special case code. llvm-svn: 99409
-
Fariborz Jahanian authored
extension (radar 6812436). llvm-svn: 99408
-
Douglas Gregor authored
since we have absolutely no way to match them when they are declared nor do we have a way to represent these parsed-but-not-checked friend declarations. llvm-svn: 99407
-
Douglas Gregor authored
llvm-svn: 99405
-
Fariborz Jahanian authored
Fixes PR6641. llvm-svn: 99404
-
Anders Carlsson authored
More vtable improvements. We now compute and keep track of all vtable related information which avoids computing the same vtable layout over and over. llvm-svn: 99403
-
Jim Grosbach authored
llvm-svn: 99402
-
Torok Edwin authored
otherwise the SmallVector it contains doesn't free its memory. In most cases LiveIntervalAnalysis could get away by not calling the destructor, because VNInfos are bumpptr-allocated, and smallvectors usually don't grow. However when the SmallVector does grow it always leaks. This is the valgrind shown leak from the original testcase: ==8206== 18,304 bytes in 151 blocks are definitely lost in loss record 164 of 164 ==8206== at 0x4A079C7: operator new(unsigned long) (vg_replace_malloc.c:220) ==8206== by 0x4DB7A7E: llvm::SmallVectorBase::grow_pod(unsigned long, unsigned long) (in /home/edwin/clam/git/builds/defaul t/libclamav/.libs/libclamav.so.6.1.0) ==8206== by 0x4F90382: llvm::VNInfo::addKill(llvm::SlotIndex) (in /home/edwin/clam/git/builds/default/libclamav/.libs/libcl amav.so.6.1.0) ==8206== by 0x5126B5C: llvm::LiveIntervals::handleVirtualRegisterDef(llvm::MachineBasicBlock*, llvm::ilist_iterator<llvm::M achineInstr>, llvm::SlotIndex, llvm::MachineOperand&, unsigned int, llvm::LiveInterval&) (in /home/edwin/clam/git/builds/defau lt/libclamav/.libs/libclamav.so.6.1.0) ==8206== by 0x512725E: llvm::LiveIntervals::handleRegisterDef(llvm::MachineBasicBlock*, llvm::ilist_iterator<llvm::MachineI nstr>, llvm::SlotIndex, llvm::MachineOperand&, unsigned int) (in /home/edwin/clam/git/builds/default/libclamav/.libs/libclamav .so.6.1.0) ==8206== by 0x51278A8: llvm::LiveIntervals::computeIntervals() (in /home/edwin/clam/git/builds/default/libclamav/.libs/libc lamav.so.6.1.0) ==8206== by 0x5127CB4: llvm::LiveIntervals::runOnMachineFunction(llvm::MachineFunction&) (in /home/edwin/clam/git/builds/de fault/libclamav/.libs/libclamav.so.6.1.0) ==8206== by 0x4DAE935: llvm::FPPassManager::runOnFunction(llvm::Function&) (in /home/edwin/clam/git/builds/default/libclama v/.libs/libclamav.so.6.1.0) ==8206== by 0x4DAEB10: llvm::FunctionPassManagerImpl::run(llvm::Function&) (in /home/edwin/clam/git/builds/default/libclama v/.libs/libclamav.so.6.1.0) ==8206== by 0x4DAED3D: llvm::FunctionPassManager::run(llvm::Function&) (in /home/edwin/clam/git/builds/default/libclamav/.l ibs/libclamav.so.6.1.0) ==8206== by 0x4D8BE8E: llvm::JIT::runJITOnFunctionUnlocked(llvm::Function*, llvm::MutexGuard const&) (in /home/edwin/clam/git/builds/default/libclamav/.libs/libclamav.so.6.1.0) ==8206== by 0x4D8CA72: llvm::JIT::getPointerToFunction(llvm::Function*) (in /home/edwin/clam/git/builds/default/libclamav/.libs/libclamav.so.6.1.0) llvm-svn: 99400
-
Gabor Greif authored
I have audited all getOperandNo calls now, fixing hidden assumptions. CallSite related uglyness will be eliminated successively. Note this patch has a long and griveous history, for all the back-and-forths have a look at CallSite.h's log. llvm-svn: 99399
-
Gabor Greif authored
llvm-svn: 99398
-
Gabor Greif authored
llvm-svn: 99395
-
Gabor Greif authored
llvm-svn: 99394
-
Duncan Sands authored
llvm-svn: 99392
-
John McCall authored
llvm-svn: 99391
-
John McCall authored
template <> friend void foo(int); we need to change it to friend void foo<>(int); or else the user won't get the template specialization they obviously want. llvm-svn: 99390
-
John McCall authored
llvm-svn: 99389
-
Douglas Gregor authored
that was present in a prior declaration, emit a warning rather than a hard error (which we did before, and still do with mismatched exception specifications). Moreover, provide a fix-it hint with the throw() clause that should be added, e.g., t.C:10:7: warning: 'operator new' is missing exception specification 'throw(std::bad_alloc)' void *operator new(unsigned long sz) ^ throw(std::bad_alloc) As part of this, disable the warning when we're missing an exception specification on operator new, operator new[], operator delete, or operator delete[] when exceptions are turned off (-fno-exceptions). Fixes PR5957. llvm-svn: 99388
-
Anders Carlsson authored
llvm-svn: 99385
-
Anders Carlsson authored
llvm-svn: 99384
-
John McCall authored
templates. So delay access-control diagnostics when (for example) the target of a friend declaration is a specific specialization of a template. I was surprised to find that this was required for an access-controlled selfhost. llvm-svn: 99383
-
Douglas Gregor authored
operators, make sure that the implicitly-declared global new and delete operators are always available. Fixes PR5904. llvm-svn: 99382
-
Anders Carlsson authored
llvm-svn: 99381
-
Daniel Dunbar authored
llvm-svn: 99380
-
Evan Cheng authored
llvm-svn: 99378
-
Douglas Gregor authored
scope. Fixes PR6619. llvm-svn: 99377
-
Johnny Chen authored
llvm-svn: 99376
-
Chris Lattner authored
and defining the add pattern with Pat<>, eliminating a use of parallel. llvm-svn: 99375
-
Anders Carlsson authored
llvm-svn: 99374
-
Johnny Chen authored
respectively, and add some more comment. llvm-svn: 99373
-
Dan Gohman authored
llvm-svn: 99372
-
Chris Lattner authored
data it contains (similar to GetStringMapEntryFromValue). Patch by Greg Clayton! llvm-svn: 99371
-
Chris Lattner authored
llvm-svn: 99370
-
Chris Lattner authored
ISD node. The only change in the generated isel code are comments like: < // Src: (X86dec_flag:i16 GR16:i16:$src) --- > // Src: (X86dec_flag:i16:i32 GR16:i16:$src) because now it knows that X86dec_flag returns both an i16 (for the result) and an i32 (for EFLAGS) in this case. Wewt. llvm-svn: 99369
-
Douglas Gregor authored
each namespace, even when the outer namespace has multiple definitions. As part of this, collapsed two pointers worth of storage (original namespace and inner anonymous namespace) into a single pointer with a distinguishing bit, since the two are mutually exclusive, saving a pointer per NamespaceDecl. Fixes PR6620. llvm-svn: 99368
-
Anders Carlsson authored
llvm-svn: 99367
-