- Jun 17, 2020
-
-
Kirill Bobyrev authored
llvm::getHeatColor becomes a problem when maxFreq = 0 -> freq = 0 => log2(double(freq)) / log2(maxFreq) -> log2(0.) / log2(0.) which results in illegal instruction on some architectures. Problematic revision: https://reviews.llvm.org/D77172
-
Sander de Smalen authored
Reviewers: david-arm, efriedma, c-rhodes Reviewed By: c-rhodes Tags: #clang Differential Revision: https://reviews.llvm.org/D81462
-
Kadir Cetinkaya authored
-
Florian Hahn authored
Currently load instructions are added to the cache for invariant pointer group dependencies, but only pointer values are removed currently. That leads to dangling AssertingVHs in the test case below, where we delete a load from an invariant pointer group. We should also remove the entries from the cache. Fixes PR46054. Reviewers: efriedma, hfinkel, asbirlea Reviewed By: efriedma Differential Revision: https://reviews.llvm.org/D81726
-
Serge Pavlov authored
-
Max Kazantsev authored
-
James Henderson authored
This is a natural extension of the previous changes to use the Cursor class independently in the standard and extended opcode paths, and in turn allows delaying error handling until the entire line has been printed in verbose mode, removing interleaved output in some cases. Reviewed by: MaskRay, JDevlieghere Differential Revision: https://reviews.llvm.org/D81562
-
LLVM GN Syncbot authored
-
Vitaly Buka authored
Summary: Depends on D81831. Reviewers: eugenis, pcc Reviewed By: eugenis Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81832
-
Vitaly Buka authored
Summary: This code is going to be used in StackSafety. This patch is file move with minimal changes. Identifiers will be fixed in the followup patch. Reviewers: eugenis, pcc Reviewed By: eugenis Subscribers: mgorny, hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81831
-
Jonas Paulsson authored
Check that the MemoryVT of LoadA matches that of LoadB. This fixes https://bugs.llvm.org/show_bug.cgi?id=46239. Review: Ulrich Weigand Differential Revision: https://reviews.llvm.org/D81671
-
Joachim Protze authored
-
Joachim Protze authored
Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D76012
-
Kang Zhang authored
Summary: In the patch D62907 the PPC CTRLoops pass has been replaced by Generic Hardware Loop pass, and it has imported some new intrinsic for Generic Hardware Loop. The old intrinsic used in PPC CTRLoops int_ppc_mtctr and int_ppc_is_decremented_ctr_nonzero is been replaced by int_set_loop_iterations and loop_decrement. This patch is to remove above unused two instrinsic. Reviewed By: shchenz Differential Revision: https://reviews.llvm.org/D81539
-
Richard Smith authored
-
Richard Smith authored
We weren't re-entering template scopes in the right order, causing this to break self-host with -fdelayed-template-parsing. This reverts commit 237c2a23.
-
Serge Pavlov authored
The functions sys::ExcecuteAndWait and sys::Wait now have additional argument of type pointer to structure, which is filled with process execution statistics upon process termination. These are total and user execution times and peak memory consumption. By default this argument is nullptr so existing users of these function must not change behavior. Differential Revision: https://reviews.llvm.org/D78901
-
Martin Storsjö authored
This matches GCC, which enabled -mms-bitfields by default for mingw targets in 4.7 [1]. [1] https://www.gnu.org/software/gcc/gcc-4.7/changes.html Differential Revision: https://reviews.llvm.org/D81795
-
Martin Storsjö authored
This diagnostic (which defaults to an error, added in 95833f33) was intended to clearly point out cases where the C++ ABI won't match the Microsoft C++ ABI, for cases when this is enabled via a pragma over a region of code. The MSVC compatible struct layout feature can also be enabled via a compiler option (-mms-bitfields). If enabled that way, one essentially can't compile any C++ code unless also building with -Wno-incompatible-ms-struct (which GCC doesn't support, and projects developed with GCC aren't setting). For the MinGW target, it's expected that the C++ ABI won't match the MSVC one, if this option is used for getting the struct layout to match MSVC. Differential Revision: https://reviews.llvm.org/D81794
-
Martin Storsjö authored
The msvcrt library isn't a pure import library; it does contain regular object files with wrappers/fallbacks, and these can require linking against kernel32. This only makes a difference when linking with ld.bfd, as lld always searches all static libraries. This matches a similar change made recently in gcc in https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=850533ab160ef40eccfd039e1e3b138cf26e76b8, although clang adds --start-group --end-group around these libraries if -static is specified, which gcc doesn't. But try to match gcc's linking order in any case, for consistency. Differential Revision: https://reviews.llvm.org/D80880
-
Igor Kudrin authored
Differential Revision: https://reviews.llvm.org/D81844
-
Sameer Sahasrabuddhe authored
Values that are uniform within a loop but appear divergent to uses outside the loop are "tainted" so that such uses are marked divergent. But if such a use is a branch, then it's divergence needs to be propagated. The simplest way to do that is to put the branch back in the main worklist so that it is processed appropriately. Reviewed By: simoll Differential Revision: https://reviews.llvm.org/D81822
-
Itay Bookstein authored
Summary: Previously, GlobalAlias::copyAttributesFrom did not preserve ThreadLocalMode, causing incorrect IR generation in IR linking flows. This patch pushes the code responsible for copying this attribute from GlobalVariable::copyAttributesFrom down to GlobalValue::copyAttributesFrom so that it is shared by GlobalAlias. Fixes PR46297. Reviewers: tejohnson, pcc, hans Reviewed By: tejohnson, hans Subscribers: hiraditya, ibookstein, dexonsmith, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81605
-
Matt Arsenault authored
This was hidden by the IR expansion in AMDGPUCodeGenPrepare, which I forgot to turn off.
-
Richard Smith authored
C++ unqualified name lookup searches template parameter scopes immediately after finishing searching the entity the parameters belong to. (Eg, for a class template, you search the template parameter scope after looking in that class template and its base classes and before looking in the scope containing the class template.) This is complicated by the fact that scope lookup within a template parameter scope looks in a different sequence of places prior to reaching the end of the declarator-id in the template declaration. We used to approximate the proper lookup rule with a hack in the scope / decl context walk inside name lookup. Now we instead compute the lookup parent for each template parameter scope. This gets the right answer and as a bonus is substantially simpler and more uniform. In order to get this right, we now make sure to enter a distinct Scope for each template parameter scope. (The fact that we didn't before was already a bug, but not really observable most of the time, since template parameters can't shadow each other.)
-
Richard Smith authored
redeclaration chain for an array. A prior attempt to fix this in r280330 didn't handle the case where the old variable is dependent and the new one is not. It is notable and worrying that the test case in this example forms a redeclaration chain for a non-dependent variable that includes a declaration with a dependent type. We should probably fix that too.
-
Chen Zheng authored
remove the wrong added comments as xsmaddasp is introduced in PWR8
-
Jez Ng authored
Summary: So things work on 32-bit machines. (@vzakhari reported the breakage starting from D80177). Reviewers: #lld-macho, vzakhari Subscribers: llvm-commits, vzakhari Tags: #llvm Differential Revision: https://reviews.llvm.org/D81982
-
Xing GUO authored
This patch helps change the return type of `writeVariableSizedInteger()` from `void` to `Error`. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D81915
-
Matt Arsenault authored
We weren't doing anything with this, and keeping it would just add more boilerplate for GlobalISel.
-
Fangrui Song authored
-
Fangrui Song authored
We don't add file headers to tests. The comments are useless as well - their purpose can be easily inferred from the filenames.
-
Jun Ma authored
Differential Revision: https://reviews.llvm.org/D81543
-
Saleem Abdulrasool authored
Update the test to no longer rely on the testing workaround in the linker and use the external libSystem stub.
-
Daniel Sanders authored
Summary: Adds two features to the generated rule disable option: - '*' - Disable all rules - '!<foo>' - Re-enable rule(s) - '!foo' - Enable rule named 'foo' - '!5' - Enable rule five - '!4-9' - Enable rule four to nine - '!foo-bar' - Enable rules from 'foo' to (and including) 'bar' (the '!' is available to the generated disable option but is not part of the underlying and determines whether to call setRuleDisabled() or setRuleEnabled()) This is intended to support unit testing of combine rules so that you can do: GeneratedCfg.setRuleDisabled("*") GeneratedCfg.setRuleEnabled("foo") to ensure only a specific rule is in effect. The rule is still required to be included in a combiner though Also added --...-only-enable-rule=X,Y which is effectively an alias for --...-disable-rule=*,!X,!Y and as such interacts properly with disable-rule. Reviewers: aditya_nandakumar, bogner, volkan, aemerson, paquette, arsenm Subscribers: wdng, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81889
-
Lucy Fox authored
Differential Revision: https://reviews.llvm.org/D81435
-
Christopher Tetreault authored
Summary: Attempts to call getNumElements on scalable vectors identified by test LLVM.Other::scalable-vectors-core-ir.ll. Since these checks are all attempting to find if two vectors are the same size, calling getElementCount will only increase safety. Reviewers: efriedma, aprantl, reames, kmclaughlin, sdesmalen Reviewed By: efriedma Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81895
-
Saleem Abdulrasool authored
This removes the stub library that lld injected to satisfy the dependency on the libSystem. Now with TBD support, we can provide the stub library to permit the tests to function properly as they would on a real system. Reviewed By: smeenai Differential Revision: https://reviews.llvm.org/D81418
-
Christopher Tetreault authored
Summary: Silence GCC -Wconversion-null warning from GTest Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D81976
-
Jonas Devlieghere authored
-