summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Initial support for visiting CXXMemberCallExpr.Zhongxing Xu2010-04-012-6/+93
| | | | llvm-svn: 100098
* Clean up this file a little, no functionality change. This is a subset of myNick Lewycky2010-04-011-11/+10
| | | | | | patch back in r94322. llvm-svn: 100097
* switch IRBuilder to use NewDebugLoc for locations insteadChris Lattner2010-04-012-10/+13
| | | | | | | | | | of raw mdnodes. This allows frontends to specify debug locations without ever creating an MDNode for the DILocation. This requires a corresponding clang/llvm-gcc change which I'll try to commit as simultaneously as possible. llvm-svn: 100095
* adjust to IRBuilder change and use faster DebugLoc apis.Chris Lattner2010-04-012-21/+11
| | | | llvm-svn: 100093
* add comments, don't require inlined-at to be specified.Chris Lattner2010-04-011-1/+3
| | | | llvm-svn: 100092
* Fix sdisel memcpy, memset, memmove lowering:Evan Cheng2010-04-0114-182/+312
| | | | | | | | | | | | | 1. Makes it possible to lower with floating point loads and stores. 2. Avoid unaligned loads / stores unless it's fast. 3. Fix some memcpy lowering logic bug related to when to optimize a load from constant string into a constant. 4. Adjust x86 memcpy lowering threshold to make it more sane. 5. Fix x86 target hook so it uses vector and floating point memory ops more effectively. rdar://7774704 llvm-svn: 100090
* Nehalem unaligned memory access is fast.Evan Cheng2010-04-013-2/+15
| | | | llvm-svn: 100089
* Switch the representation of the location in instruction fromChris Lattner2010-04-013-12/+54
| | | | | | | | | | | | | being a TrackingVH<MDNode> to a NewDebugLoc, shrinking sizeof(Instruction) a lot, and providing clients the ability to deal with locations in terms of NewDebugLoc instead of having to deal with Metadata. This is still fully compatible with all clients that *do* use MDNodes for everything of course. No functionality change. llvm-svn: 100088
* include header.Chris Lattner2010-04-011-0/+1
| | | | llvm-svn: 100087
* rewrite handling of forward ref'd instruction metadata Chris Lattner2010-04-012-9/+60
| | | | | | | | to used deferred resolution instead of creating a temporary node + rauw. There is no reason to create the temporary mdnode, then do rauw, then destroy it. llvm-svn: 100086
* change this from using '!dbg' to using '!dbgx'. TheChris Lattner2010-04-011-4/+4
| | | | | | MD used here isn't valid for !dbg. llvm-svn: 100085
* fix a bug in DebugRecVH::deleted/allUsesReplacedWith. If an Chris Lattner2010-04-011-4/+7
| | | | | | | entry in the Scope+InlinedAt drops to a non-canonical form, we need to reset the idx member of both VH's to 0. llvm-svn: 100084
* no really, we don't need to copy strings around in the accessor.Chris Lattner2010-04-011-1/+1
| | | | llvm-svn: 100083
* eliminate a temporary smallvectorChris Lattner2010-04-012-13/+5
| | | | llvm-svn: 100082
* add a method to decode a DILocation into a NewDebugLoc.Chris Lattner2010-04-012-1/+19
| | | | llvm-svn: 100081
* Improve C++ constructor handling.Zhongxing Xu2010-04-012-2/+5
| | | | llvm-svn: 100080
* Fix typo.Eric Christopher2010-04-011-1/+1
| | | | llvm-svn: 100079
* Add aeskeygenassist intrinsic and rename all of the aes intrinsics toEric Christopher2010-04-012-26/+38
| | | | | | | aes instead of sse4.2. Add a brief todo for a subtarget flag and rework the aeskeygenassist instruction to more closely match the docs. llvm-svn: 100078
* First start at wmmintrin.h file with Intel AES-NI instructions.Eric Christopher2010-04-012-0/+75
| | | | llvm-svn: 100077
* There are no known O'Caml problems at the moment.Erick Tryzelaar2010-04-011-14/+0
| | | | llvm-svn: 100076
* update cmakefile.Chris Lattner2010-04-011-0/+1
| | | | llvm-svn: 100074
* Add a new "NewDebugLoc" class which will eventually replace DebugLoc,Chris Lattner2010-04-013-1/+369
| | | | | | | | | | | | and will replace the 'DbgInfo' member in Instruction. The benefit of NewDebugLoc is that it is compact (8 bytes vs 12/24 bytes for the DbgInfo member in Instruction on a 32/64 bit system), it means that we will end up not having to allocate MDNodes to represent the "DILocations" in common cases of -O0 -g, and it is much more efficient to get things out of than the MDNode. llvm-svn: 100072
* Fix a bug (PR 6699) in RegionStore::RemoveDeadBindings() whereTed Kremenek2010-04-012-32/+47
| | | | | | array values with a non-zero offset would get prematurely pruned from the store. llvm-svn: 100067
* vml[as] are slow on 1136jf-s also.Jim Grosbach2010-04-011-1/+2
| | | | llvm-svn: 100066
* Reapply r100056. It doesn't look like it's the one that's causing a failure.Bill Wendling2010-04-011-35/+23
| | | | llvm-svn: 100065
* Pass -m32/-m64 to assembler.Mikhail Glushenkov2010-03-311-0/+2
| | | | llvm-svn: 100064
* Revert r100056. It was causing a failure on MSVC.Bill Wendling2010-03-311-23/+35
| | | | llvm-svn: 100062
* Improve diagnostics when an elaborated-type-specifer containing aDouglas Gregor2010-03-318-13/+15
| | | | | | | | | | | | | | | | nested-name-specifier (e.g., "class T::foo") fails to find a tag member in the scope nominated by the nested-name-specifier. Previously, we gave a bland error: 'Nested' does not name a tag member in the specified scope which didn't actually say where we were looking, which was rather horrible when the nested-name-specifier was instantiated. Now, we give something a bit better: error: no class named 'Nested' in 'NoDepBase<T>' llvm-svn: 100060
* Reverting 100048; it broke two Frontend debug info tests.Stuart Hastings2010-03-312-26/+10
| | | | llvm-svn: 100058
* Rewrite CorrectExtraCFGEdges() to make it more understandable.Bill Wendling2010-03-311-35/+23
| | | | | | | | | | * Set the "DestA" and "DestB" according to how they're understood by the method. I.e., if one or both of them should point to the "fall through" block, then point to the fall through block. * Improve the loop that removes superfluous edges to be more understandable. llvm-svn: 100056
* clang/Darwin: Don't include enable_execute_stack in libcc_kext.a.Daniel Dunbar2010-03-311-1/+0
| | | | llvm-svn: 100055
* Change the representation of dependent elaborated-type-specifiersDouglas Gregor2010-03-317-17/+125
| | | | | | | | | | | | | | (such as "class T::foo") from an ElaboratedType of a TypenameType to a DependentNameType, which more accurately models the underlying concept. Improve template instantiation for DependentNameType nodes that represent nested-name-specifiers, by performing tag name lookup and checking the resulting tag appropriately. Fixes PR5681. There is still much testing and cleanup to do in this area. llvm-svn: 100054
* Add a redundant PHI testcase for SSAUpdater to go with svn r100047.Bob Wilson2010-03-311-0/+46
| | | | llvm-svn: 100050
* Debug info can now properly represent functions inside classes inside other ↵Stuart Hastings2010-03-312-10/+26
| | | | | | functions. Partial fix for Radar 7424645. llvm-svn: 100048
* Rewrite part of the SSAUpdater to be more careful about inserting redundantBob Wilson2010-03-312-159/+286
| | | | | | | | PHIs. The previous algorithm was unable to reliably detect when existing PHIs in a cycle can be reused. I'm still working on reducing a testcase. Radar 7711900. llvm-svn: 100047
* <rdar://problem/7733536> Move libcompiler_rt over to a dylib target for ↵Nick Kledzik2010-03-312-23/+21
| | | | | | Libsystem llvm-svn: 100045
* Fix a nasty dangling-pointer heisenbug that couldDale Johannesen2010-03-311-1/+5
| | | | | | | | | | | | | | | | | | generate wrong code pretty much anywhere AFAICT. A case that hits the bug reproducibly is impossible, but the situation was like this: Addr = ... Store -> Addr Addr2 = GEP , 0, 0 Store -> Addr2 Handling the first store, the code changed replaced Addr with a sunkaddr and deleted Addr, but not its table entry. Code in OptimizedBlock replaced Addr2 with a bitcast; if that happened to reuse the memory of Addr, the old table entry was erroneously found when handling the second store. llvm-svn: 100044
* testcase for r99914, provided by baldrick!Gabor Greif2010-03-311-0/+18
| | | | llvm-svn: 100043
* reduce indentation, minor cleanups.Chris Lattner2010-03-311-38/+42
| | | | llvm-svn: 100042
* Issue better syntax error when objc's messagingFariborz Jahanian2010-03-312-2/+11
| | | | | | ares are not separated by ':' (radar 7030268). llvm-svn: 100040
* Extend DependentNameType with a keyword enum that specifies whetherDouglas Gregor2010-03-319-58/+115
| | | | | | | this was parsed as a typename-specifier, elaborated-type-specifier (including the kind), or just a dependent qualified type name. llvm-svn: 100039
* Reduce string trashing.Benjamin Kramer2010-03-311-2/+2
| | | | llvm-svn: 100038
* Use spaces, not tabsJakob Stoklund Olesen2010-03-311-1/+1
| | | | llvm-svn: 100037
* <rdar://problem/7813254> check enable_execute_stack implementationNick Kledzik2010-03-311-1/+6
| | | | llvm-svn: 100036
* DwarfDebug: Allocate DIEValues with a BumpPtrAllocator. Most of them areBenjamin Kramer2010-03-314-32/+30
| | | | | | | | | POD-like anyway, so we don't even care about calling their d'tors (DIEBlock being the exception). ~6% less mallocs and ~1% compile time improvement on clang -O0 -g oggenc.c llvm-svn: 100035
* Add a FIXME.Daniel Dunbar2010-03-311-0/+2
| | | | llvm-svn: 100034
* Comment the changes for r98218 and friends inside the source code.Bill Wendling2010-03-311-0/+5
| | | | llvm-svn: 100033
* lit: Make sure to close any files we open as part of redirection.Daniel Dunbar2010-03-311-1/+7
| | | | | | PR6753. llvm-svn: 100032
* Comment the changes for r98218 and friends inside the source code.Bill Wendling2010-03-312-0/+10
| | | | llvm-svn: 100031
* For reverse data flow analyses, enqueue the blocks in reverse order.Ted Kremenek2010-03-311-4/+17
| | | | | | | This more likely matches with the ideal order the blocks should be visited. This shaves another 1% off the -fsyntax-only time for compare.c (403.gcc). llvm-svn: 100030
OpenPOWER on IntegriCloud