- Jul 26, 2017
-
-
Eric Beckmann authored
llvm-svn: 309151
-
Jakub Kuderski authored
Summary: We can use the template parameter `IsPostDom` to pick an appropriate SmallVector size to store DomTree roots for dominators and postdominators. Before, the code would always allocate memory with `std::vector`. Reviewers: dberlin, davide, sanjoy, grosser Reviewed By: grosser Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35636 llvm-svn: 309148
-
Jon Roelofs authored
https://reviews.llvm.org/D35848 llvm-svn: 309147
-
Jakub Kuderski authored
Summary: This patch moves root-finding logic from DominatorTreeBase to GenericDomTreeConstruction.h. It makes the behavior simpler and more consistent by always adding a virtual root to PostDominatorTrees. Reviewers: dberlin, davide, grosser, sanjoy Reviewed By: dberlin Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35597 llvm-svn: 309146
-
Erich Keane authored
llvm-svn: 309145
-
Reid Kleckner authored
llvm-svn: 309144
-
Eric Beckmann authored
idea, because it might get locked down and rendered unopenable. llvm-svn: 309142
-
Rafael Espindola authored
llvm-svn: 309141
-
George Karpenkov authored
Differential Revision: https://reviews.llvm.org/D35867 llvm-svn: 309140
-
Simon Pilgrim authored
llvm-svn: 309139
-
Simon Pilgrim authored
llvm-svn: 309138
-
Simon Pilgrim authored
llvm-svn: 309137
-
Simon Pilgrim authored
llvm-svn: 309136
-
Eric Beckmann authored
llvm-svn: 309134
-
Reid Kleckner authored
Summary: Bash interperets the '?' character as matching an arbitrary character. On systems that have a file or directory with exactly one character in their root directory, '/?' gets reinterpreted into that pathname, which fails to match the expected Help text for llvm-rc. This patch quotes the '/?' to avoid that edge case. Reviewers: mnbvmar, ecbeckmann, rnk Reviewed By: rnk Subscribers: dyung, ruiu, llvm-commits Differential Revision: https://reviews.llvm.org/D35852 llvm-svn: 309133
-
Florian Hahn authored
Summary: This silences a couple of implicit fallthrough warnings with GCC 7.1 in this file. Reviewers: colinl, kparzysz Reviewed By: kparzysz Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35889 llvm-svn: 309129
-
Dehao Chen authored
llvm-svn: 309125
-
Simon Pilgrim authored
llvm-svn: 309124
-
Brian Gesiak authored
Summary: rL257221 attempted to run lit's own test suite continuously, but that commit was reverted because lit's test suite does not pass on Windows. Because lit's tests do not run continuously, they often regress. In order to un-revert rL257221, mark lit tests that fail as XFAIL for Windows platforms. Test Plan: On a Windows development environment, follow the instructions in utils/lit/README.txt to run lit's test suite: ``` utils/lit/lit.py \ --path /path/to/your/llvm/build/bin \ utils/lit/tests ``` Verify that the test suite is run and a successful exit code is returned. Reviewers: mgorny, rnk, delcypher, beanz Reviewed By: rnk Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35879 llvm-svn: 309123
-
Brian Gesiak authored
Summary: Whereas rL299560 and rL309071 call `parallelism_groups.items()`, under the assumption that `parallelism_groups` is a `dict` type, the default parameter for that attribute is a `list`. Change the default to a `dict` for type correctness. This regression in the unit tests would have been caught if the unit tests were being run continously. It also would have been caught if the lit project used a Python type checker such as `mypy`. Test Plan: As per the instructions in `utils/lit/README.txt`, run the lit unit test suite: ``` utils/lit/lit.py \ --path /path/to/your/llvm/build/bin \ utils/lit/tests ``` Verify that the test `lit :: unit/TestRunner.py` fails before applying this patch, but passes once this patch is applied. Reviewers: mgorny, rnk, rafael Reviewed By: mgorny Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35878 llvm-svn: 309122
-
Dehao Chen authored
Summary: The new PM needs to invoke add-discriminator pass when building with -fdebug-info-for-profiling. Reviewers: chandlerc, davidxl Reviewed By: chandlerc Subscribers: sanjoy, llvm-commits Differential Revision: https://reviews.llvm.org/D35744 llvm-svn: 309121
-
Brian Gesiak authored
Summary: This reverts rL306623, which removed `FileBasedTest`, an abstract base class, but did not also remove the usages of that class in the lit unit tests. The revert fixes four test failures in the lit unit test suite. Test plan: As per the instructions in `utils/lit/README.txt`, run the lit unit test suite: ``` utils/lit/lit.py \ --path /path/to/your/llvm/build/bin \ utils/lit/tests ``` Verify that the following tests fail before applying this patch, and pass once the patch is applied: ``` lit :: test-data.py lit :: test-output.py lit :: xunit-output.py ``` In addition, run `check-llvm` to make sure the existing LLVM test suite executes normally. Reviewers: george.karpenkov, mgorny, dlj Reviewed By: mgorny Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35877 llvm-svn: 309120
-
Roman Gareev authored
Translate the ScheduleOptimizer to use the new isl C++ bindings. Reviewed-by:
Michael Kruse <llvm@meinersbur.de> Differential Revision: https://reviews.llvm.org/D35845 llvm-svn: 309119
-
Serge Pavlov authored
llvm-svn: 309118
-
Nuno Lopes authored
llvm-svn: 309117
-
Alex Lorenz authored
with an availability attribute to silence" note rdar://33539233 Differential Revision: https://reviews.llvm.org/D35726 llvm-svn: 309116
-
Jonas Hahnfeld authored
Introduce OPENMP_ENABLE_LIBOMPTARGET which defaults to OFF at the moment. libomptarget is not yet ready for prime time: - Offloading to NVIDIA GPUs is not completed yet (compiler, device RTL) - The generic ELF plugin for offloading to the host (meant for testing) uses a single instance of the OpenMP runtime (libomp). That is why omp_is_initial_device() returns 1 which makes the tests fail. Because of these reasons, we want to disable building (and testing!) for release 5.0. See https://bugs.llvm.org/show_bug.cgi?id=33859 Differential Revision: https://reviews.llvm.org/D35719 llvm-svn: 309115
-
Stefan Pintilie authored
Added a comment to explain how to add a PPCISD node. llvm-svn: 309114
-
Yuka Takahashi authored
Summary: `clang --autocomplete=-std` will show ``` -std: Language standard to compile for -std= Language standard to compile for -stdlib= C++ standard library to use ``` after this change. However, showing HelpText with completion in bash seems super tricky, so this feature will be used in other shells (fish, zsh...). Reviewers: v.g.vassilev, teemperor, ruiu Subscribers: cfe-commits, hiraditya Differential Revision: https://reviews.llvm.org/D35759 llvm-svn: 309113
-
Yuka Takahashi authored
Summary: File path wasn't autocompleted after `-fmodule-cache-path=[tab]`, so fixed this bug by checking if $flags contains only a newline or not. Differential Revision: https://reviews.llvm.org/D35763 llvm-svn: 309112
-
Daniel Sanders authored
The ARM bots have started failing and while this patch should be an improvement for these bots, it's also the only suspect in the blamelist. Reverting while Diana and I investigate the problem. llvm-svn: 309111
-
Michael Kruse authored
Since there will be no more a 1:1 correspondence between statements and basic blocks, we would like to get rid of the method getStmtFor(BB) and its uses. Here we remove one of its uses in ScopInfo by fetching the statement in which the call instruction lies. Contributed-by:
Nandini Singhal <cs15mtech01004@iith.ac.in> Differential Revision: https://reviews.llvm.org/D35691 llvm-svn: 309110
-
Michael Kruse authored
In the following loop: int i; for (i = 0; i < func(); i+=1) ; SCoP: for (int j = 0; j<n; j+=1) S(i, j) The value i is synthesizable in the SCoP that includes only the j-loop. This is because i is fixed within the SCoP, it is irrelevant whether it originates from another loop. This fixes a strange case where a PHI was synthesiable in a SCoP, but not its incoming value, triggering an assertion. This should fix MultiSource/Applications/sgefa/sgefa of the perf-x86_64-penryn-O3-polly-before-vectorizer-unprofitable buildbot. llvm-svn: 309109
-
Zvi Rackover authored
Summary: Adding support for combining power2-strided build_vector's where the first build_vectori's operand is extracted from a non-zero index. Example: v4i32 build_vector((extract_elt V, 1), (extract_elt V, 3), (extract_elt V, 5), (extract_elt V, 7)) --> v4i32 truncate (bitcast (shuffle<1,u,3,u,5,u,7,u> V, u) to v4i64) Reviewers: delena, RKSimon, guyblank Reviewed By: RKSimon Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35700 llvm-svn: 309108
-
Simon Pilgrim authored
Test on 32/64 bit targets where appropriate llvm-svn: 309107
-
Alex Lorenz authored
'#pragma pack (pop)' and suspicious uses of '#pragma pack' in included files The first recommit (r308441) caused a "non-default #pragma pack value might change the alignment of struct or union members in the included file" warning in LLVM itself. This recommit tweaks the added warning to avoid warnings for #includes that don't have any records that are affected by the non-default alignment. This tweak avoids the previously emitted warning in LLVM. Original message: This commit adds a new -Wpragma-pack warning. It warns in the following cases: - When a translation unit is missing terminating #pragma pack (pop) directives. - When entering an included file if the current alignment value as determined by '#pragma pack' directives is different from the default alignment value. - When leaving an included file that changed the state of the current alignment value. rdar://10184173 Differential Revision: https://reviews.llvm.org/D35484 llvm-svn: 309106
-
Martin Storsjö authored
In COFF, a symbol offset can't be stored in the relocation (as is done in ELF or MachO), but is stored as the immediate in the instruction itself. The immediate in the ADRP thus is the symbol offset in bytes, not in pages. For the PAGEOFFSET_12A/L relocations, ignore any offset outside of the lowest 12 bits; they won't have any effect on the ADD/LDR/STR instruction itself but only on the associated ADRP. This is similar to how the same issue is handled for MOVW/MOVT instructions in ELF (see e.g. SVN r307713, and r307728 in lld). This fixes "fixup out of range" errors while building larger object files, where temporary symbols end up as a plain section symbol and an offset, and fixes any cases where the symbol offset mean that the actual target ended up on a different page than the symbol itself. Differential Revision: https://reviews.llvm.org/D35791 llvm-svn: 309105
-
Simon Pilgrim authored
llvm-svn: 309104
-
Simon Pilgrim authored
llvm-svn: 309103
-
Simon Pilgrim authored
llvm-svn: 309102
-