summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add extra tests for handling throw() and noexcept() specifiers.Aaron Ballman2016-01-121-0/+11
| | | | | | Patch by Adrian Zgorzałek llvm-svn: 257522
* Properly track the end location of an exception specification.Aaron Ballman2016-01-122-1/+40
| | | | | | Patch by Adrian Zgorzałek llvm-svn: 257521
* Module debugging: Make the module format part of the module hash insteadAdrian Prantl2016-01-122-4/+6
| | | | | | | | | | of the file name. This is consistent with how other HeaderSearchOptions are handled. Due to the other inputs of the module hash (revision number) this is not really testable in a meaningful way. llvm-svn: 257520
* [WebAssembly] Fix a test to work even when the integrated assembler is enabled.Dan Gohman2016-01-121-2/+3
| | | | | | | Add -no-integrated-as to this test, since it's testing inline asm strings that aren't actually valid assembly syntax. llvm-svn: 257519
* Codegen: [PPC] Handle weighted comparisons when inserting selects.Kyle Butt2016-01-122-10/+68
| | | | | | | | | | | | | Only non-weighted predicates were handled in PPCInstrInfo::insertSelect. Handle the weighted predicates as well. This latent bug was triggered by r255398, because it added use of the branch-weighted predicates. While here, switch over an enum instead of an int to get the compiler to enforce totality in the future. llvm-svn: 257518
* [WebAssembly] Add a EM_WEBASSEMBLY value, and several bits of code that use it.Dan Gohman2016-01-128-7/+46
| | | | | | | | | A request has been made to the official registry, but an official value is not yet available. This patch uses a temporary value in order to support development. When an official value is recieved, the value of EM_WEBASSEMBLY will be updated. llvm-svn: 257517
* Don't store CGOpenMPRegionInfo::CodeGen as a reference (PR26078)Hans Wennborg2016-01-121-1/+1
| | | | | | | The referenced llvm::function_ref<void(CodeGenFunction &)> object can go away before CodeGen is used, resulting in a crash. llvm-svn: 257516
* [WebAssembly] Add ELFRelocs/WebAssembly.def as a "textual header" to the ↵Dan Gohman2016-01-121-0/+1
| | | | | | module map. llvm-svn: 257515
* Fix of r257495.Roman Gareev2016-01-121-1/+0
| | | | | | Remove redundant "FPM->add(createDemoteRegisterToMemoryPass());" llvm-svn: 257514
* Fix TestThreadJump on Windows.Zachary Turner2016-01-121-2/+1
| | | | | | | | The system can create threads for a system threadpool, so there is no guarantee that the thread that is stopped is thread 1. So use a more robust check. llvm-svn: 257513
* [modules] Don't diagnose a conflict between two using-declarations that name ↵Richard Smith2016-01-125-4/+21
| | | | | | equivalent internal linkage entities. llvm-svn: 257512
* [WebAssembly] Introduce a WebAssemblyTargetStreamer class.Dan Gohman2016-01-129-64/+225
| | | | | | | Refactor .param, .result, .local, and .endfunc, as directives, using the proper MCTargetStreamer mechanism, rather than fake instructions. llvm-svn: 257511
* Fix build breakage of r257502.Stephane Sezer2016-01-121-1/+1
| | | | llvm-svn: 257510
* Add a clang test for r257376 (Ensure -mcpu=xscale works for arm targets).Dimitry Andric2016-01-121-0/+3
| | | | llvm-svn: 257509
* Replace inherited constructor with an explicit oneKrzysztof Parzyszek2016-01-121-2/+2
| | | | | | Some bots failed when the inherited constructor was used. llvm-svn: 257508
* Rename IgnoredUndef -> Ignored since it is not an undefined symbol.Rui Ueyama2016-01-124-16/+15
| | | | | | | Also rename Ignored -> IgnoredWeak and IgnoredStrong -> Ignored, since strong symbol is a norm. llvm-svn: 257507
* One more missing std:: qualification from JonathanMarshall Clow2016-01-121-1/+2
| | | | llvm-svn: 257506
* [WebAssembly] Make CFG stackification independent of basic-block labels.Dan Gohman2016-01-1211-346/+541
| | | | | | | | | | | | | | | | | | | | | | | This patch changes the way labels are referenced. Instead of referencing the basic-block label name (eg. .LBB0_0), instructions now just have an immediate which indicates the depth in the control-flow stack to find a label to jump to. This makes them much closer to what we expect to have in the binary encoding, and avoids the problem of basic-block label names not being explicit in the binary encoding. Also, it terminates blocks and loops with end_block and end_loop instructions, rather than basic-block label names, for similar reasons. This will also fix problems where two constructs appear to have the same label, because we no longer explicitly use labels, so consumers that need labels will presumably create their own labels, and presumably they won't reuse labels when they do. This patch does make the code a little more awkward to read; as a partial mitigation, this patch also introduces comments showing where the labels are, and comments on each branch showing where it's branching to. llvm-svn: 257505
* [Hexagon] Implement RDF-based post-RA optimizationsKrzysztof Parzyszek2016-01-128-3/+459
| | | | | | | | - Handle simple cases of register copies (what current RDF CP allows). - Hexagon-specific dead code elimination: handles dead address updates in post-increment instructions. llvm-svn: 257504
* [LibCallSimplifier] use instruction-level fast-math-flags to transform ↵Sanjay Patel2016-01-122-9/+10
| | | | | | | | pow(x, 0.5) calls Also, propagate the FMF to the newly created sqrt() call. llvm-svn: 257503
* Increase use of svr4 packets to improve performance on POSIX remotesStephane Sezer2016-01-126-145/+361
| | | | | | | | | | | | | | | | | | | | Summary: Allows the remote to enumerate the link map when adding and removing shared libraries, so that lldb doesn't need to read it manually from the remote's memory. This provides very large speedups (on the order of 50%) in total startup time when using the ds2 remote on android or Tizen devices. Reviewers: ADodds, tberghammer, tfiala Subscribers: tberghammer, sas, danalbert, llvm-commits, srhines Differential Revision: http://reviews.llvm.org/D16004 Change by Francis Ricci <fjricci@fb.com> llvm-svn: 257502
* [ORC] More cleanup, partially aimed at working around GCC ICE.Lang Hames2016-01-121-6/+2
| | | | llvm-svn: 257501
* rangify; NFCISanjay Patel2016-01-121-12/+10
| | | | llvm-svn: 257500
* Auto-link with ole32.dll to simplify building LLVM.dllReid Kleckner2016-01-121-0/+1
| | | | | | Patch by Jakob Bornecrantz llvm-svn: 257499
* [Orc] Replace lambda with a helper method.Lang Hames2016-01-121-4/+1
| | | | | | This is good cleanup, but I'm also hoping it'll fix some more GCC ICEs. llvm-svn: 257498
* function names start with a lower case letter ; NFCSanjay Patel2016-01-121-1/+1
| | | | llvm-svn: 257497
* function names start with a lower case letter ; NFCSanjay Patel2016-01-127-24/+24
| | | | llvm-svn: 257496
* We do not need to schedule another loop interchange pass after Polly, as PollyRoman Gareev2016-01-121-1/+1
| | | | | | | | | | | should perform loop interchanges itself. This also fixes a bug we see due to the "loop-interchange" pass producing incorrect IR when compiling linpack-pc.c from the LLVM test-suite with "-polly-position=before-vectorizer". Reviewed-by: Tobias Grosser <tobias@grosser.es> llvm-svn: 257495
* Fix bot failure from r257493: remove extraneous temp file readTeresa Johnson2016-01-121-1/+1
| | | | | | This was left from an earlier version of the test. llvm-svn: 257494
* [ThinLTO] Handle an external call from an import to an alias in destTeresa Johnson2016-01-123-0/+34
| | | | | | | | | The findExternalCalls routine ignores calls to functions already defined in the dest module. This was not handling the case where the definition in the current module is actually an alias to a function call. llvm-svn: 257493
* [ELF][MIPS] Do not create dynamic relocations against _gp_disp symbolSimon Atanasyan2016-01-122-8/+19
| | | | | | | | MIPS _gp_disp designates offset between start of function and gp pointer into GOT therefore any relocations against it do not require dynamic relocation. llvm-svn: 257492
* [LibCallSimplifier] use instruction-level fast-math-flags to transform ↵Sanjay Patel2016-01-122-28/+22
| | | | | | | | | | | | | | pow(exp(x)) calls See also: http://reviews.llvm.org/rL255555 http://reviews.llvm.org/rL256871 http://reviews.llvm.org/rL256964 http://reviews.llvm.org/rL257400 http://reviews.llvm.org/rL257404 http://reviews.llvm.org/rL257414 llvm-svn: 257491
* RDF: Copy propagationKrzysztof Parzyszek2016-01-123-0/+229
| | | | | | | | | | This is a very limited implementation of DFG-based copy propagation. It only handles actual COPY instructions (does not handle other equivalents such as add-immediate with a 0 operand). The major limitation is that it does not update the DFG: that will be the change required to make it more robust (hopefully coming up soon). llvm-svn: 257490
* New API for restoring current thread's affinity to init affinity of applicationJonathan Peyton2016-01-121-0/+38
| | | | | | | | | | | | | | | This new API, int kmp_set_thread_affinity_mask_initial(), is available for use by other parallel runtime libraries inside a possibly OpenMP-registered thread. This entry point restores the current thread's affinity mask to the affinity mask of the application when it first began. If -1 is returned it can be assumed that either the thread hasn't called affinity initialization or that the thread isn't registered with the OpenMP library. If 0 is returned then, then the call was successful. Any return value greater than zero indicates an error occurred when setting affinity. Differential Revision: http://reviews.llvm.org/D15867 llvm-svn: 257489
* AMDGPU: Emit note directive for HSA even if there are no functionsTom Stellard2016-01-123-7/+27
| | | | | | | | | | Reviewers: arsenm, echristo Subscribers: arsenm, llvm-commits Differential Revision: http://reviews.llvm.org/D16010 llvm-svn: 257488
* [Orc] Clang-format.Lang Hames2016-01-121-8/+6
| | | | llvm-svn: 257487
* [Orc] Take another shot at working around the GCC 4.7 ICE inLang Hames2016-01-121-32/+29
| | | | | | http://lab.llvm.org:8011/builders/clang-x86_64-ubuntu-gdb-75/builds/27486 llvm-svn: 257486
* RDF: Dead code eliminationKrzysztof Parzyszek2016-01-123-0/+270
| | | | | | Utility class to perform DFG-based dead code elimination. llvm-svn: 257485
* consolidate exp/exp2 testsSanjay Patel2016-01-122-19/+12
| | | | | | The transform is identical, so keep the tests together and save some overhead. llvm-svn: 257484
* Fix compiler warnings from r257477Krzysztof Parzyszek2016-01-121-2/+2
| | | | llvm-svn: 257483
* [libFuzzer] add a macro LLVM_FUZZER_DEFINES_SANITIZER_WEAK_HOOOKSKostya Serebryany2016-01-121-0/+8
| | | | llvm-svn: 257482
* Add/edit tests to include instruction-level FMF on callsSanjay Patel2016-01-121-16/+28
| | | | | | | | | Prepatory patch before changing LibCallSimplifier to use the FMF. Also, tighten the CHECK lines and give the tests more meaningful names. Similar changes to: http://reviews.llvm.org/rL257414 llvm-svn: 257481
* RDF: Implement register liveness analysisKrzysztof Parzyszek2016-01-123-0/+955
| | | | | | Compute block live-ins and operand kill flags from the DFG. llvm-svn: 257480
* [compiler-rt] [msan] Remove stable-runtime requirement for insertvalue_origin.ccAdhemerval Zanella2016-01-121-1/+0
| | | | | | | | This patch removes the requirement on stable-runtime on insertvalue_origin.cc testcase, added due a instrumentation failure on aarch64-linux. This is fixed on llvm code by r257375. llvm-svn: 257479
* [mips] Correct operand order in DSP's mthi/mtloDaniel Sanders2016-01-122-9/+10
| | | | | | | | | | | | Summary: The result register is the second operand as per the other mt* instructions. Reviewers: vkalintiris Subscribers: llvm-commits, dsanders Differential Revision: http://reviews.llvm.org/D15993 llvm-svn: 257478
* Register Data Flow: data flow graphKrzysztof Parzyszek2016-01-123-0/+2558
| | | | | | | | | Target independent, SSA-based data flow framework for representing data flow between physical registers. This commit implements the creation of the actual data flow graph. llvm-svn: 257477
* [Hexagon] Make helper function static. NFC.Benjamin Kramer2016-01-121-3/+3
| | | | llvm-svn: 257476
* Fix test on windows.Rafael Espindola2016-01-121-1/+1
| | | | llvm-svn: 257475
* Add a bunch of missing includes in the test suite to make it more portable. ↵Marshall Clow2016-01-1259-116/+175
| | | | | | Fixes bugs #26120 and #26121. Thanks to Jonathan Wakely for the reports and the patches. llvm-svn: 257474
* [ARM] Fix several state persistence bugsKeno Fischer2016-01-124-4/+40
| | | | | | | | | | | | | | | | | | | | | | | Summary: This fixes three bugs, in all of which state is not or incorrecly reset between objects (i.e. when reusing the same pass manager to create multiple object files): 1) AttributeSection needs to be reset to nullptr, because otherwise the backend will try to emit into the old object file's attribute section causing a segmentation fault. 2) MappingSymbolCounter needs to be reset, otherwise the second object file will start where the first one left off. 3) The MCStreamer base class resets the Streamer's e_flags settings. Since EF_ARM_EABI_VER5 is set on streamer creation, we need to set it again after the MCStreamer was rest. Also rename Reset (uppser case) to EHReset to avoid confusion with reset (lower case). Reviewers: rengolin Differential Revision: http://reviews.llvm.org/D15950 llvm-svn: 257473
OpenPOWER on IntegriCloud