- Jan 15, 2014
-
-
Quentin Colombet authored
Add a hook in the C API of LTO so that clients of the code generator can set their own handler for the LLVM diagnostics. The handler is defined like this: typedef void (*lto_diagnostic_handler_t)(lto_codegen_diagnostic_severity_t severity, const char *diag, void *ctxt) - severity says how bad this is. - diag is a string that contains the diagnostic message. - ctxt is the registered context for this handler. This hook is more general than the lto_get_error_message, since this function keeps only the latest message and can only be queried when something went wrong (no warning for instance). <rdar://problem/15517596> llvm-svn: 199338
-
rdar://problem/12478440Bob Wilson authored
This was never used for anything so we should just get rid of it. llvm-svn: 199337
-
Chandler Carruth authored
which catch buggy versions of libstdc++. While libc++ would pass them, we don't actually update the state in the configure script to use libc++ when we pass --enable-libcpp, the logic for that is in the Makefiles. So just completely skip the library test when that configure flag is passed. Hopefully this will be enough to fix the darwin bots at last, and thanks to Duncan Smith for getting things set up so I can watch the bots myself on lab.llvm.org and see any failures! llvm-svn: 199334
-
Andrea Di Biagio authored
Redirect the output of llc to /dev/null. llvm-svn: 199329
-
Andrea Di Biagio authored
This fixes a regression intruced by r199135. Revision 199135 tried to simplify part of the logic in method DAGCombiner::SimplifyVBinOp introducing calls to method BuildVectorSDNode::isConstant(). However, that revision wrongly changed the check performed by method SimplifyVBinOp to identify dag nodes that can be folded. Before revision 199135, that method only tried to simplify vector binary operations if both operands were build_vector of Constant/ConstantFP/Undef only. After revision 199135, method SimplifyVBinop tried to simplify also vector binary operations with only one constant operand. This fixes the problem restoring the old behavior of SimplifyVBinOp. llvm-svn: 199328
-
Rafael Espindola authored
I did write a version returning ErrorOr<OwningPtr<Binary> >, but it is too cumbersome to use without std::move. I will keep the patch locally and submit when we switch to c++11. llvm-svn: 199326
-
Chandler Carruth authored
enable flag that selects the C++ standard library to use with the host toolchain. Otherwise we end up testing the wrong config. I'm not really happy about this placement, but its pragmatic and should unblock the Apple builders. llvm-svn: 199325
-
Kevin Enderby authored
the | and & bitwise operators. rdar://15570412 llvm-svn: 199323
-
Rafael Espindola authored
llvm-svn: 199319
-
Zoran Jovanovic authored
llvm-svn: 199316
-
Zoran Jovanovic authored
llvm-svn: 199315
-
Chandler Carruth authored
*quite* ready to just slam C++11 on by default. llvm-svn: 199314
-
Chandler Carruth authored
libstdc++v4.6. This is quite hard to test directly, so we test for it by checking a known missing feature in that version that was added in v4.7. This should prevent users from upgrading Clang but not GCC and hosting with a too-old GCC's libstdc++ and getting strange and hard to debug errors when we switch to C++11 by default. Also, switch several of the macros I introduced to use AC_LANG_SOURCE rather than AC_LANG_PROGRAM as we don't need configure's help writing our main function (and we don't need such a function at all for most of the tests). llvm-svn: 199313
-
David Majnemer authored
MSVC on x64 requires that we create image relative symbol references to refer to RTTI data. Seeing as how there is no way to explicitly make reference to a given relocation type in LLVM IR, pattern match expressions of the form &foo - &__ImageBase. Differential Revision: http://llvm-reviews.chandlerc.com/D2523 llvm-svn: 199312
-
Renato Golin authored
Disabling remote MCJIT tests on ARM again, as they're still failing when self-hosting on ARM, despite all my tests. At least now we have more info on what message it's breaking and what is going on. Investigating. llvm-svn: 199310
-
Renato Golin authored
llvm-svn: 199309
-
NAKAMURA Takumi authored
llvm-svn: 199305
-
Kostya Serebryany authored
replace LeakSanitizerIsTurnedOffForTheCurrentProcess with __lsan_is_turned_off, but this time hide it under __has_feature(address_sanitizer); also include <sanitizer/lsan_interface.h> llvm-svn: 199303
-
Elena Demikhovsky authored
llvm-svn: 199301
-
Andrew Trick authored
llvm-svn: 199299
-
Craig Topper authored
Add OpSize16 to the two byte forms of INC/DEC that we only use in 64-bit mode and a 64-bit only LEA. Even though we'll not be in 16-bit mode when we use them it makes their tables consistent with their 32-bit counterparts. llvm-svn: 199297
-
Jiangning Liu authored
llvm-svn: 199296
-
Craig Topper authored
Simplify x86 disassembler table handling of when to use TYPE_Rv/TYPE_R16/TYPE_R32 now that HasOpSizePrefix only means 16-bit instructions. llvm-svn: 199295
-
Hans Wennborg authored
There has been an old FIXME to find the right cut-off for when it's worth analyzing and potentially transforming a switch to a lookup table. The switches always have two or more cases. I could not measure any speed-up by transforming a switch with two cases. A switch with three cases gets a nice speed-up, and I couldn't measure any compile-time regression, so I think this is the right threshold. In a Clang self-host, this causes 480 new switches to be transformed, and reduces the final binary size with 8 KB. llvm-svn: 199294
-
Rafael Espindola authored
llvm-svn: 199293
-
Arnold Schwaighofer authored
strides Fixes PR18480. llvm-svn: 199291
-
Rafael Espindola authored
llvm-svn: 199288
-
Rafael Espindola authored
The GNU as behavior is a bit different and very strange. It will mark any label that contains an instruction. We can implement that, but using the type looks more natural since gas will not mark a function if a .word is used to output the instructions! llvm-svn: 199287
-
Hans Wennborg authored
llvm-svn: 199286
-
Hans Wennborg authored
The line breaks around the "m:<mangling>" text in the Data Layout section look weird. Let's see if this helps. llvm-svn: 199285
-
Weiming Zhao authored
When expanding neon pseudo stores, it may miss the implicit uses of sub regs, which may cause post RA scheduler reorder instructions that breakes anti dependency. For example: VST1d64QPseudo %R0<kill>, 16, %Q9_Q10, pred:14, pred:%noreg will be expanded to VST1d64Q %R0<kill>, 16, %D18, pred:14, pred:%noreg; An instruction that defines %D20 may be scheduled before the store by mistake. This patches adds implicit uses for such case. For the example above, it emits: VST1d64Q %R0<kill>, 8, %D18, pred:14, pred:%noreg, %Q9_Q10<imp-use> llvm-svn: 199282
-
Rafael Espindola authored
llvm-svn: 199279
-
Eric Christopher authored
presence of CU ranges. llvm-svn: 199276
-
Rafael Espindola authored
llvm-svn: 199275
-
Rafael Espindola authored
llvm-svn: 199269
-
- Jan 14, 2014
-
-
Renato Golin authored
llvm-svn: 199268
-
Eric Christopher authored
llvm-svn: 199267
-
Tim Northover authored
The changes caused by folding an sp-adjustment into a "pop" previously disrupted the forward search for the final real instruction in a terminating block. This switches to a backward search (skipping debug instrs). This fixes PR18399. Patch by Zhaoshi. llvm-svn: 199266
-
Tim Northover authored
We should set them to expand for now since there are no patterns dealing with them. Actually, there are no instructions either so I doubt they'll ever be acceptable. llvm-svn: 199265
-
Joey Gouly authored
to run lld tests individually. llvm-svn: 199264
-