| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 64032
|
|
|
|
| |
llvm-svn: 64031
|
|
|
|
| |
llvm-svn: 64030
|
|
|
|
| |
llvm-svn: 64029
|
|
|
|
|
|
|
| |
This will allow us to generate break and continue even if vlas are
involved without worry that we'll silently generate bad code.
llvm-svn: 64028
|
|
|
|
| |
llvm-svn: 64027
|
|
|
|
|
|
| |
No functional change.
llvm-svn: 64026
|
|
|
|
|
|
| |
This uncovers some bugs, so several test cases now fail.
llvm-svn: 64025
|
|
|
|
| |
llvm-svn: 64024
|
|
|
|
| |
llvm-svn: 64023
|
|
|
|
| |
llvm-svn: 64022
|
|
|
|
| |
llvm-svn: 64021
|
|
|
|
| |
llvm-svn: 64020
|
|
|
|
|
|
| |
Objective-C++
llvm-svn: 64019
|
|
|
|
|
|
| |
ScheduleDAG's TLI member to use const.
llvm-svn: 64018
|
|
|
|
|
|
| |
to make the encapsulation more clear.
llvm-svn: 64017
|
|
|
|
|
|
|
| |
the iterator typedefs instead of handling the std::vector
directly.
llvm-svn: 64016
|
|
|
|
| |
llvm-svn: 64015
|
|
|
|
| |
llvm-svn: 64014
|
|
|
|
| |
llvm-svn: 64013
|
|
|
|
|
|
| |
for pointing this out.
llvm-svn: 64011
|
|
|
|
| |
llvm-svn: 64010
|
|
|
|
|
|
| |
Obviously I make a miserable header developer :)
llvm-svn: 64009
|
|
|
|
| |
llvm-svn: 64008
|
|
|
|
|
|
|
| |
uintmax_t is unsigned long long, which is not optimal, but is assumed
elsewhere already.
llvm-svn: 64007
|
|
|
|
|
|
| |
Thanks to Eli for pointing this out.
llvm-svn: 64006
|
|
|
|
|
|
| |
two AddString methods to use it.
llvm-svn: 64005
|
|
|
|
| |
llvm-svn: 64004
|
|
|
|
| |
llvm-svn: 64003
|
|
|
|
|
|
|
|
| |
pointed out by Torok Edwin.
Remove trailing whitespaces.
llvm-svn: 64002
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Currently, this is producing poor code, but we prefer correctness
to performance for now. Eventually we should be able to generally
avoid having to set the alignment when we control the alignment of
the alloca.
- This knocks out 33/1000 failures on my single argument ABI tests,
down to 22/1000 and 18 of these appear to be gcc bugs. Woot.
llvm-svn: 64001
|
|
|
|
|
|
|
|
|
| |
Adjust derived classes to pass UnknownLoc where
a DebugLoc does not make sense. Pick one of
DebugLoc and non-DebugLoc variants to survive
for all such classes.
llvm-svn: 64000
|
|
|
|
| |
llvm-svn: 63999
|
|
|
|
|
|
| |
freeing of memory).
llvm-svn: 63998
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Made allocation of Stmt objects using vanilla new/delete a *compiler
error* by making this new/delete "protected" within class Stmt.
- Now the only way to allocate Stmt objects is by using the new
operator that takes ASTContext& as an argument. This ensures that
all Stmt nodes are allocated from the same (pool) allocator.
- Naturally, these two changes required that *all* creation sites for
AST nodes use new (ASTContext&). This is a large patch, but the
majority of the changes are just this mechanical adjustment.
- The above changes also mean that AST nodes can no longer be
deallocated using 'delete'. Instead, one most do
StmtObject->Destroy(ASTContext&) or do
ASTContextObject.Deallocate(StmtObject) (the latter not running the
'Destroy' method).
Along the way I also...
- Made CompoundStmt allocate its array of Stmt* using the allocator in
ASTContext (previously it used std::vector). There are a whole
bunch of other Stmt classes that need to be similarly changed to
ensure that all memory allocated for ASTs comes from the allocator
in ASTContext.
- Added a new smart pointer ExprOwningPtr to Sema.h. This replaces
the uses of llvm::OwningPtr within Sema, as llvm::OwningPtr used
'delete' to free memory instead of a Stmt's 'Destroy' method.
Big thanks to Doug Gregor for helping with the acrobatics of making
'new/delete' private and the new smart pointer ExprOwningPtr!
llvm-svn: 63997
|
|
|
|
| |
llvm-svn: 63996
|
|
|
|
| |
llvm-svn: 63995
|
|
|
|
|
|
| |
doesn't think it's safe. This works around PR1911.
llvm-svn: 63994
|
|
|
|
| |
llvm-svn: 63993
|
|
|
|
|
|
|
|
|
|
|
|
| |
Many targets build placeholder nodes for special operands, e.g.
GlobalBaseReg on X86 and PPC for the PIC base. There's no
sensible way to associate debug info with these. I've left
them built with getNode calls with explicit DebugLoc::getUnknownLoc operands.
I'm not too happy about this but don't see a good improvement;
I considered adding a getPseudoOperand or something, but it
seems to me that'll just make it harder to read.
llvm-svn: 63992
|
|
|
|
|
|
| |
to get the non-compound opcode from the compound opcode instead of relying on the order of BinaryOperator::opcode values. This unbreaks the misc-ps.c test.
llvm-svn: 63991
|
|
|
|
| |
llvm-svn: 63990
|
|
|
|
| |
llvm-svn: 63989
|
|
|
|
| |
llvm-svn: 63988
|
|
|
|
| |
llvm-svn: 63987
|
|
|
|
|
|
| |
non-empty.
llvm-svn: 63986
|
|
|
|
| |
llvm-svn: 63985
|
|
|
|
|
|
|
|
| |
long instead of int. This is because system heaers like to redefine
typedefs and that is an error if they don't exactly match. Use long
for intptr_t on all systems where long is the right size.
llvm-svn: 63984
|
|
|
|
| |
llvm-svn: 63983
|
|
|
|
| |
llvm-svn: 63982
|