- Sep 10, 2013
-
-
Manman Ren authored
TAG_friend are updated to use scope reference. Added testing cases to verify that class with inheritance can be uniqued. llvm-svn: 190364
-
Manman Ren authored
This partially reverts r190330. DIScope::getContext now returns DIScopeRef instead of DIScope. We construct a DIScopeRef from DIScope when we are dealing with subprogram, lexical block or name space. llvm-svn: 190362
-
rdar://problem/14728845Enrico Granata authored
Making the --timeout (-t) option to "platform shell" work for real llvm-svn: 190361
-
Andrew Trick authored
Arnold's idea. I generally try to avoid stateful heuristics because it can make debugging harder. However, we need a way to prevent the latency priority from dominating, and it somewhat makes sense to schedule aggressively for latency only within an issue group. Swift in particular likes this, and it doesn't hurt anyone else: | Benchmarks/MiBench/consumer-lame | 10.39% | | Benchmarks/Misc/himenobmtxpa | 9.63% | llvm-svn: 190360
-
Bill Wendling authored
llvm-svn: 190359
-
Jack Carter authored
llvm-svn: 190358
-
Eli Friedman authored
LLVM IR doesn't currently allow atomic bool load/store operations, and the transformation is dubious anyway because it isn't profitable on all platforms. PR17163. llvm-svn: 190357
-
- Sep 09, 2013
-
-
Daniel Malea authored
- occasional lldb hangs are causing noisy buildbots and trouble in the (Debian/Ubuntu) package builder llvm-svn: 190355
-
Bill Wendling authored
llvm-svn: 190354
-
Matt Beaumont-Gay authored
The predicates in CXXRecordDecl which test various properties of special members can't be called on incomplete decls. llvm-svn: 190353
-
Quentin Colombet authored
Several architectures use the same instruction to perform both a comparison and a subtract. The instruction selection framework does not allow to consider different basic blocks to expose such fusion opportunities. Therefore, these instructions are “merged” by CSE at MI IR level. To increase the likelihood of CSE to apply in such situation, we reorder the operands of the comparison, when they have the same complexity, so that they matches the order of the most frequent subtract. E.g., icmp A, B ... sub B, A <rdar://problem/14514580> llvm-svn: 190352
-
Manman Ren authored
llvm-svn: 190351
-
Bill Wendling authored
llvm-svn: 190350
-
Bill Wendling authored
llvm-svn: 190349
-
Bill Wendling authored
llvm-svn: 190348
-
Bill Wendling authored
llvm-svn: 190347
-
Eric Christopher authored
as well as types. No functional change as they're not emitted unless the option is true anyhow. llvm-svn: 190346
-
Eric Christopher authored
llvm-svn: 190345
-
Eric Christopher authored
handling. llvm-svn: 190344
-
Eric Christopher authored
for the gdb index as the names convey. llvm-svn: 190343
-
Eric Christopher authored
llvm-svn: 190342
-
Fariborz Jahanian authored
message sent to aggregate-valued methods. Fix visibility of trampoline type used in translation of such expressions. // rdar://14932320 llvm-svn: 190341
-
Sean Silva authored
It was really hard to tell that modules are experimental. This makes it really clear by * Noting the experimental status in the title. * Moving the "warning" above the table of contents. llvm-svn: 190340
-
Sean Silva authored
Half the internet has wildly incorrect ideas about what LLVM is (in particular, many get the impression that LLVM is some magical cross-platform runtime), so saying "LLVM" near "cross-compilation" in a user-facing doc might provoke confusion. llvm-svn: 190338
-
Sean Silva authored
Last I heard LSan is getting close to prime-time, but for now keep LeakSanitizer.rst hidden (especially since it contains so little content). llvm-svn: 190337
-
Sean Silva authored
llvm-svn: 190336
-
Bill Wendling authored
There are more than one paths to where the frame information is emitted. Place the call to generateCompactUnwindEncodings() into the method which outputs the frame information, thus ensuring that the encoding is there for every path. This involved threading the MCAsmBackend object through to this method. <rdar://problem/13623355> llvm-svn: 190335
-
Manman Ren authored
In DIBuilder, the context field of a TAG_member is updated to use the scope reference. Verifier is updated accordingly. DebugInfoFinder now needs to generate a type identifier map to have access to the actual scope. Same applies for BreakpointPrinter. processModule of DebugInfoFinder is called during initialization phase of the verifier to make sure the type identifier map is constructed early enough. We are now able to unique a simple class as demonstrated by the added testing case. llvm-svn: 190334
-
Sean Silva authored
llvm-svn: 190333
-
Rui Ueyama authored
llvm-svn: 190332
-
Bob Wilson authored
llvm-svn: 190331
-
Manman Ren authored
DIScope::getContext is a wrapper function that calls the specific getContext method on each subclass. When we switch DIType::getContext to return DIScopeRef instead of DIScope, DIScope::getContext can no longer return a DIScope without a type identifier map. DIScope::getContext is only used by DwarfDebug, so we move it to DwarfDebug to have easy access to the type identifier map. llvm-svn: 190330
-
Rui Ueyama authored
llvm-svn: 190329
-
Bob Wilson authored
The work on this project was left in an unfinished and inconsistent state. Hopefully someone will eventually get a chance to implement this feature, but in the meantime, it is better to put things back the way the were. I have left support in the bitcode reader to handle the case-range bitcode format, so that we do not lose bitcode compatibility with the llvm 3.3 release. This reverts the following commits: 155464, 156374, 156377, 156613, 156704, 156757, 156804 156808, 156985, 157046, 157112, 157183, 157315, 157384, 157575, 157576, 157586, 157612, 157810, 157814, 157815, 157880, 157881, 157882, 157884, 157887, 157901, 158979, 157987, 157989, 158986, 158997, 159076, 159101, 159100, 159200, 159201, 159207, 159527, 159532, 159540, 159583, 159618, 159658, 159659, 159660, 159661, 159703, 159704, 160076, 167356, 172025, 186736 llvm-svn: 190328
-
Sean Silva authored
Adornments need to be at least as long as the thing they adorn. llvm-svn: 190327
-
Sean Silva authored
llvm-svn: 190326
-
Manman Ren authored
This helper function needs the type identifier map when we switch DIType::getContext to return DIScopeRef instead of DIScope. Since isSubprogramContext is used by DwarfDebug only, We move it to DwarfDebug to have easy access to the map. llvm-svn: 190325
-
Sean Silva authored
llvm-svn: 190324
-
Hans Wennborg authored
Apparently folks run into this (PR17097). The flag is not supported by MSVC either, but we should parse it so we don't get confused when it occurs. This changes the clang-cl output for "clang-cl /c /o foo.obj" from: clang-cl.exe: error: no such file or directory: '/o' clang-cl.exe: error: no such file or directory: 'foo.obj' to: clang-cl.exe: warning: argument unused during compilation: '/o bajs.obj' llvm-svn: 190323
-
Manman Ren authored
A reference to a scope is more general than a reference to a type since DIType is a subclass of DIScope. A reference to a type can be either an identifier for the type or the DIType itself, while a reference to a scope can be either an identifier for the type (when the scope is indeed a type) or the DIScope itself. A reference to a type and a reference to a scope will be resolved in the same way. The only difference is in the verifier when a field is a reference to a type (i.e. the containing type field of a DICompositeType) or a field is a reference to a scope (i.e. the context field of a DIType). This is to get ready for switching DIType::getContext to return DIScopeRef instead of DIScope. Tighten up isTypeRef and isScopeRef to make sure the identifier is not empty and the MDNode is DIType for TypeRef and DIScope for ScopeRef. llvm-svn: 190322
-