summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Re-committing r253473 after hopefully fixing the bot breakage. There was a ↵Aaron Ballman2015-11-184-0/+147
| | | | | | copy-pasta issue that my local testing did not catch. llvm-svn: 253481
* Removing specific target from the generic testArtyom Skrobov2015-11-181-2/+2
| | | | llvm-svn: 253479
* Switched cmake build from using buildSwigWrapperClases.py to the cleaned up ↵Todd Fiala2015-11-182-1/+3
| | | | | | | | | | | | | | version. This change does not introduce static bindings. It is simply using the pylinted cleaned up code in prepare_bindings.py. If this breaks anyting, I'll revert immediately and figure out what needs to be addressed. I'm looking to wrap up the cleanup aspect of the code change (pylinted, removal of code that implements existing python stdlib code, fixes for Xcode adoption, etc.). llvm-svn: 253478
* Accept -whole-archive and -no-whole-archive (with a single dash)Ed Maste2015-11-181-2/+2
| | | | | | Clang uses the single-dash version in addSanitizerRuntime(). llvm-svn: 253477
* [Myriad]: fix test for WindowsDouglas Katzman2015-11-181-4/+4
| | | | llvm-svn: 253476
* Reverting r253473 while I investigate build bot failures.Aaron Ballman2015-11-184-147/+0
| | | | llvm-svn: 253475
* [llvm-profdata] Use SmallSet rather that std::set for keeping track of ↵Nathan Slingerland2015-11-181-3/+2
| | | | | | | | | | profdata merge errors Missed bit of feedback from D14720. Use SmallSet<std::error_code> rather than std::set<...> in order to be more efficient. llvm-svn: 253474
* Adding AST matchers for VarDecl storage durations. Can now determine whether ↵Aaron Ballman2015-11-184-0/+147
| | | | | | a VarDecl has automatic, static, or thread storage duration. This also updates the documentation for matchers, which appear to be missing some previous additions. llvm-svn: 253473
* [WebAssembly] Add more whitespace characters to prettify the assembly output.Dan Gohman2015-11-182-9/+9
| | | | llvm-svn: 253472
* [ARM] Support +feature targeting in -mcpu/-marchBradley Smith2015-11-182-8/+45
| | | | llvm-svn: 253471
* [ARM] Add +feature names to TargetParser extensions tableBradley Smith2015-11-183-17/+35
| | | | llvm-svn: 253470
* [WebAssembly] Make bogus inline asm strings in tests be comments.Dan Gohman2015-11-181-6/+6
| | | | | | | These tests aren't testing that the result is valid syntax; they're testing that the compiler emits the inline asm operands correctly. llvm-svn: 253469
* [WebAssembly] Add some spaces to the assembly output to vertically align ↵Dan Gohman2015-11-182-25/+27
| | | | | | operands. llvm-svn: 253468
* [Myriad]: insert -L paths into linker cmd only when they exist.Douglas Katzman2015-11-187-36/+25
| | | | | | Differential Revision: http://reviews.llvm.org/D14754 llvm-svn: 253467
* [libclang] Add entry points that take a full command line including argv[0].Benjamin Kramer2015-11-187-17/+93
| | | | | | | | | | | | This provides both a more uniform interface and makes libclang behave like clang tooling wrt relative paths against argv[0]. This is necessary for finding paths to a c++ standard library relative to a clang binary given in a compilation database. It can also be used to find paths relative to libclang.so if the full path to it is passed in. Differential Revision: http://reviews.llvm.org/D14695 llvm-svn: 253466
* [WebAssembly] Enable register coloring and register stackifying.Dan Gohman2015-11-1837-832/+684
| | | | | | | | | | | | | | | | This also takes the push/pop syntax another step forward, introducing stack slot numbers to make it easier to see how expressions are connected. For example, the value pushed in $push7 is popped in $pop7. And, this begins an experiment with making get_local and set_local implicit when an operation directly uses or defines a register. This greatly reduces clutter. If this experiment succeeds, it may make sense to do this for const instructions as well. And, this introduces more special code for ARGUMENTS; hopefully this code will soon be obviated by proper support for live-in virtual registers. llvm-svn: 253465
* Fix bug where WinCOFFObjectWriter would assume starting from an empty output.Manuel Klimek2015-11-183-1/+8
| | | | | | | | | | Starting on an input stream that is not at offset 0 would trigger the assert in WinCOFFObjectWriter.cpp:1065: assert(getStream().tell() <= (*i)->Header.PointerToRawData && "Section::PointerToRawData is insane!"); llvm-svn: 253464
* Fix typo in comment. NFC.Fraser Cormack2015-11-181-1/+1
| | | | llvm-svn: 253462
* [SelectionDAGBuilder] Make sure DemoteReg ends up in right reg-class.Jonas Paulsson2015-11-183-3/+4
| | | | | | | | | | | | | | | | | The virtual register containing the address for returned value on stack should in the DAG be represented with a CopyFromReg node and not a Register node. Otherwise, InstrEmitter will not make sure that it ends up in the right register class for the target instruction. SystemZ needs this, becuause the reg class for address registers is a subset of the general 64 bit register class. test/SystemZ/CodeGen/args-07.ll and args-04.ll updated to run with -verify-machineinstrs. Reviewed by Hal Finkel. llvm-svn: 253461
* [tsan] Skip malloc/free interceptors when we're inside symbolizer on OS XKuba Brecka2015-11-181-9/+19
| | | | | | | | Symbolizers can call malloc/realloc/free/..., which we don't want to intercept. This is already implemented on Linux, let's do it for OS X as well. Differential Revision: http://reviews.llvm.org/D14710 llvm-svn: 253460
* Revert "Revert "Strip metadata when speculatively hoisting instructions ↵Igor Laevsky2015-11-186-1/+87
| | | | | | | | (r252604)" Failing clang test is now fixed by the r253458. llvm-svn: 253459
* Fix tests in order for them to not fail after r252604.Igor Laevsky2015-11-181-2/+2
| | | | | | | | Some expected attributes appear to be incorrect after optimizations are run and llvm will strip them. Use -O0 so that llvm will not have a chance to remove them. llvm-svn: 253458
* [asan] Use proper macro in runline.Yury Gribov2015-11-182-3/+3
| | | | llvm-svn: 253457
* Set flag for lldb when qualified name lookup is being doneEugene Leviant2015-11-182-1/+28
| | | | llvm-svn: 253456
* Revert 2 commits breaking the MSVC buildTamas Berghammer2015-11-1814-225/+917
| | | | | | | | | | Revert "Remove a few vestigial typedefs from the old world" This reverts commit 05872cda2a00fbd988c4fc761b1f87fe9edce224. Revert "Cleanup the type X list commands to use the new ForEach goodness" This reverts commit 85b1d83819a22cdc9ef12f58fd4fa92b473a4f81. llvm-svn: 253455
* [LTO] Appease buildbots take 3James Molloy2015-11-181-2/+2
| | | | | | | | This time I've found a linux box and checked it there. This test now passes. Because I'd introduced an undefined reference in @bar, gold now returns an error. This doesn't matter for the test itself, because it also emits the remarks the test is checking for. But it does cause LIT to notice a nonzero return code which it faults on. llvm-svn: 253454
* [LTO] Buildbot appeasing take 2James Molloy2015-11-181-1/+1
| | | | | | Let's try again. This time using the right function signature. It's a real pity I can't run this on a darwin machine... llvm-svn: 253453
* [LTO] Fix up test/tools/gold/X86/remarks.llJames Molloy2015-11-181-1/+4
| | | | | | It needs the same fixes as in test/LTO/X86/remarks.ll, but this test appears not to get run on my system (but does on the buildbot). Strange. llvm-svn: 253452
* [LTO] Add an early run of functionattrsJames Molloy2015-11-182-1/+5
| | | | | | Because we internalize early, we can potentially mark a bunch of functions as norecurse. Do this before globalopt. llvm-svn: 253451
* [X86][AVX512CD] add mask broadcast intrinsicsAsaf Badouh2015-11-1810-20/+109
| | | | | | Differential Revision: http://reviews.llvm.org/D14573 llvm-svn: 253450
* [X86][AVX] Added 256-bit shuffle splat tests.Simon Pilgrim2015-11-184-0/+309
| | | | llvm-svn: 253449
* prepare_bindings.py: enable static bindingsTodd Fiala2015-11-185-20/+83996
| | | | | | | | | | | | | | | Added a new flag, --allow-static-binding. When specified, if (and only if) the swig binary cannot be found, then the LLDBWrapPython.cpp and lldb.py from the scripts/Python/{static-binding-dir} are copied into the place where swig would have generated them. {static-binding-dir} defaults to static-binding, and can be overridden with the --static-binding-dir command line argument. The static bindings checked in are from r253424. llvm-svn: 253448
* AVX512: Implemented encoding for vpextrw.s instruction.Igor Breger2015-11-182-0/+53
| | | | | | Differential Revision: http://reviews.llvm.org/D14766 llvm-svn: 253447
* [OperandBundles] Tighten OperandBundleDef's interface; NFCSanjoy Das2015-11-184-20/+25
| | | | llvm-svn: 253446
* [LLDB][MIPS] Fix TestDisassembleBreakpoint.py for MIPSSagar Thakur2015-11-181-2/+6
| | | | | | | | | | | Patch by Nitesh Jain Summary: The break is opcode for breakpoint instruction. Subscribers: lldb-commits, mohit.bhakkad, sagar, bhushan Reviewers: clayborg, ovyalov, jaydeep Differential: http://reviews.llvm.org/D14634 llvm-svn: 253445
* [MIPS][LLDB]Fix TestBreakpointCondition.py for MIPSSagar Thakur2015-11-181-3/+6
| | | | | | | | | | | | | Patch by Nitesh Jain Summary: The self.getArchitecture() returns the architecture based on the value of -A flag passed to dotest.py script. There are many possible values for MIPS to this option (like mips32r2, mips32r6, mips64, mips64r2,.... ). This patch uses re.match(mips,arch) to check if architecture string starts with mips. Subscribers: lldb-commits, mohit.bhakkad, sagar, bhushan, jaydeep Reviewers: clayborg, ovyalov Differential: http://reviews.llvm.org/D14493 llvm-svn: 253444
* [mips][microMIPS] Implement DPS.W.PH, DPSQ_S.W.PH, DPSQ_SA.L.W, ↵Hrvoje Varga2015-11-186-8/+50
| | | | | | | | DPSQX_S.W.PH, DPSQX_SA.W.PH, DPSU.H.QBL, DPSU.H.QBR and DPSX.W.PH instructions Differential Revision: http://reviews.llvm.org/D14058 llvm-svn: 253443
* Replace a dyn_cast with isa where the result was only being used as a ↵Craig Topper2015-11-181-1/+1
| | | | | | boolean. NFC. llvm-svn: 253442
* Replace dyn_cast with isa in places that weren't using the returned value ↵Craig Topper2015-11-185-9/+9
| | | | | | for more than a boolean check. NFC. llvm-svn: 253441
* Update for llvm change.Rafael Espindola2015-11-182-2/+2
| | | | llvm-svn: 253440
* Default SetVector to use a DenseSet.Rafael Espindola2015-11-184-12/+11
| | | | | | | | | | | | | | | We use to have an odd difference among MapVector and SetVector. The map used a DenseMop, but the set used a SmallSet, which in turn uses a std::set. I have changed SetVector to use a DenseSet. If you were depending on the old behaviour you can pass an explicit set type or use SmallSetVector. The common cases for needing to do it are: * Optimizing for small sets. * Sets for types not supported by DenseSet. llvm-svn: 253439
* Teach the inliner to track deoptimization stateSanjoy Das2015-11-188-6/+286
| | | | | | | | | | | | | | | | Summary: This change teaches LLVM's inliner to track and suitably adjust deoptimization state (tracked via deoptimization operand bundles) as it inlines through call sites. The operation is described in more detail in the LangRef changes. Reviewers: reames, majnemer, chandlerc, dexonsmith Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D14552 llvm-svn: 253438
* Rename ld.lld2 to ld.lld since it is the default.Rafael Espindola2015-11-18140-312/+312
| | | | llvm-svn: 253437
* Stop producing .data.rel sections.Rafael Espindola2015-11-1824-134/+93
| | | | | | | | | | | | | | | | | If a section is rw, it is irrelevant if the dynamic linker will write to it or not. It looks like llvm implemented this because gcc was doing it. It looks like gcc implemented this in the hope that it would put all the relocated items close together and speed up the dynamic linker. There are two problem with this: * It doesn't work. Both bfd and gold will map .data.rel to .data and concatenate the input sections in the order they are seen. * If we want a feature like that, it can be implemented directly in the linker since it knowns where the dynamic relocations are. llvm-svn: 253436
* c++abi: use __builtin_offsetof instead of offsetofSaleem Abdulrasool2015-11-181-8/+9
| | | | | | | | | Use `__builtin_offsetof` in place of `offsetof`. Certain environments provide a macro definition of `offsetof` which may end up causing issues. This was observed on Windows. Use `__builtin_offsetof` to ensure correct evaluation everywhere. NFC. llvm-svn: 253435
* BuildUniversalActions(): Prune obsolete \param(s). [-Wdocumentation]NAKAMURA Takumi2015-11-181-2/+0
| | | | | FIXME: Describe BAInputs. llvm-svn: 253434
* Adjust test from fallout due to r253429David Majnemer2015-11-181-5/+5
| | | | | | | | As a side note, the jump target is much nicer than before. We went from: <bar+...> to <.plt> llvm-svn: 253433
* Fix LLD testsuite fallout from r253429David Majnemer2015-11-181-4/+4
| | | | llvm-svn: 253432
* [NFC] Change the evaluation context of a non-type default template argument ↵Faisal Vali2015-11-182-1/+16
| | | | | | | | | | | | | | | | from Unevaluated to ConstantEvaluated. This patch emits a more appropriate (but still noisy) diagnostic stream when a lambda-expression is encountered within a non-type default argument. For e.g. template<int N = ([] { return 5; }())> int f(); As opposed to complaining that a lambda expression is not allowed in an unevaluated operand, the patch complains about the lambda being forbidden in a constant expression context (which will be allowed in C++17 now that they have been accepted by EWG, unless of course CWG or national bodies (that have so far shown no signs of concern) rise in protest) As I start submitting patches for constexpr lambdas (http://wg21.link/P0170R0) under C++1z (OK'd by Richard Smith at Kona), this will be one less change to make. Thanks! llvm-svn: 253431
* Add a test for r253323David Majnemer2015-11-181-0/+47
| | | | | | Forgot to do this simultaneously with committing the fix. llvm-svn: 253430
OpenPOWER on IntegriCloud