- Jul 23, 2021
-
-
Kirill Stoimenov authored
This change eliminate the stack frame for the fast path and improves runtime performance. Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D106505
-
Shu-Chun Weng authored
-
Nick Fitzgerald authored
When two symbols import the same thing, only one import should be emitted in the Wasm file. Fixes https://bugs.llvm.org/show_bug.cgi?id=50938 Reverted in: 16aac493. Reviewed By: sbc100 Differential Revision: https://reviews.llvm.org/D105519
-
Jacques Pienaar authored
Missed this one in the first go.
-
Med Ismail Bennani authored
This patch updates the `ScriptedProcess::GetGenericInteger` return type to `llvm::Optional<unsigned long long>` to match implementation. Differential Revision: https://reviews.llvm.org/D105788 Signed-off-by:
Med Ismail Bennani <medismail.bennani@gmail.com>
-
Med Ismail Bennani authored
This patch should address the compiler warnings due to mismatch type comparaison. Differential Revision: https://reviews.llvm.org/D105788 Signed-off-by:
Med Ismail Bennani <medismail.bennani@gmail.com>
-
Martin Storsjö authored
If some symbols are marked with dllexport, we still want to export all symbols if -export-all-symbols is specified. Previously, this only worked as it should for DLL output, not for EXE. This should fix downstream bug https://github.com/msys2/MINGW-packages/issues/9163. Differential Revision: https://reviews.llvm.org/D106245
-
Mircea Trofin authored
-
Felix Berger authored
[clang-tidy] performance-unnecessary-copy-initialization: Create option to exclude container types from triggering the check. Add string list option of type names analagous to `AllowedTypes` which lets users specify a list of ExcludedContainerTypes. Types matching this list will not trigger the check when an expensive variable is copy initialized from a const accessor method they provide, i.e.: ``` ExcludedContainerTypes = 'ExcludedType' void foo() { ExcludedType<ExpensiveToCopy> Container; const ExpensiveToCopy NecessaryCopy = Container.get(); } ``` Even though an expensive to copy variable is copy initialized the check does not trigger because the container type is excluded. This is useful for container types that don't own their data, such as view types where modification of the returned references in other places cannot be reliably tracked, or const incorrect types. Differential Revision: https://reviews.llvm.org/D106173 Reviewed-by: ymandel -
Paulo Matos authored
Reland of 31859f89. This change implements new DAG notes GLOBAL_GET/GLOBAL_SET, and lowering methods for load and stores of reference types from IR globals. Once the lowering creates the new nodes, tablegen pattern matches those and converts them to Wasm global.get/set. Reviewed By: tlively Differential Revision: https://reviews.llvm.org/D104797
-
Mircea Trofin authored
The bots only build release mode, and the use of `reserve` instead of `resize`, while not causing invalid memory accesses, is incorrect.
-
Jake Egan authored
This patch defines the macro __LONGDOUBLE64 for AIX when long double is 8 bytes. Reviewed By: cebowleratibm Differential Revision: https://reviews.llvm.org/D105477
-
Roman Lebedev authored
As pointed out by Craig Topper.
-
Eric Astor authored
We previously had issues identifying macros not registered with a lowercase name. Reviewed By: mstorsjo, thakis Differential Revision: https://reviews.llvm.org/D106453
-
Anjan Kumar Guttahalli Krishna authored
This patch makes the changes in the driver that converts the medium code model to large. Reviewed By: hubert.reinterpretcast Differential Revision: https://reviews.llvm.org/D106371
-
Shu-Chun Weng authored
signal(2) and sigaction(2) have defined behaviors for invalid signal number (EINVAL) and some programs rely on it. The added test case also reveals that MSAN is too strict in this regard. Test case passed on x86_64 Linux and AArch64 Linux. Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D106468
-
Nikita Popov authored
-
Anjan Kumar Guttahalli Krishna authored
Emit the unsupported option error until the Clang's library integration support for 128-bit long double is available for AIX. Reviewed By: Whitney, cebowleratibm Differential Revision: https://reviews.llvm.org/D106074
-
Jacques Pienaar authored
Update to use alias in preparation for changing it to not just be a pure alias.
-
Jon Chesterfield authored
Reviewed By: gregrodgers, jdoerfert Differential Revision: https://reviews.llvm.org/D106581
-
Roman Lebedev authored
The logical (select) form of and/or will now be a source of problems. We don't really account for it's inverted form, yet it exists, and presumably we should treat it just like non-inverted form: https://alive2.llvm.org/ce/z/BU9AXk https://bugs.llvm.org/show_bug.cgi?id=51149 reports a reportedly-serious perf regression that will hopefully be mitigated by this.
-
Roman Lebedev authored
-
Felix Berger authored
[clang-tidy] performance-unnecessary-copy-initialization: Disable check when variable and initializer have different replaced template param types. This can happen when a template with two parameter types is instantiated with a single type. The fix would only be valid for this instantiation but fail for others that rely on an implicit type conversion. The test cases illustrate when the check should trigger and when not. Differential Revision: https://reviews.llvm.org/D106011
-
Jon Chesterfield authored
-
Simon Pilgrim authored
Update shl/lshr/ashr costs based on the worst case costs from the script in D103695 - many of the 128-bit shifts (usually where integer multiplies aren't used) have similar behaviour to AVX1 so we can merge them.
-
Simon Pilgrim authored
We'd lost AVX1 test coverage due to bulldozer (XOP) trying to use the same check prefixes - we really need to fix the update script to avoid this!
-
Jon Chesterfield authored
AMDGPU can assume Elf64 so doesn't need to abstract over Elf32 Drop a few other unused headers at the same time. Now only llvm elf and libelf are used by the plugin. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D106579
-
Aaron Ballman authored
We caught the cases where the user would explicitly use the & operator, but we were missing implicit conversions such as array decay. Fixes PR26336. Thanks to Samuel Neves for inspiration for the patch.
-
LLVM GN Syncbot authored
-
Simon Pilgrim authored
Noticed while trying to clean up the shift costs model for SSE4 targets using the script in D10369 - SLM double-pumps all the 128-bit vector conversion ops and only use FP0 pipe - numbers taken from Intel AOM + Agner.
-
Thomas Johnson authored
Differential Revision: https://reviews.llvm.org/D106497
-
Fangrui Song authored
-
Louis Dionne authored
Differential Revision: https://reviews.llvm.org/D102121
-
zoecarver authored
Mark this item as in progress and assigned to me.
-
Alex Lorenz authored
[clang][test] Add -fuse-ld= to test case added in 2542c1a5 to resolve test failure with CLANG_DEFAULT_LINKER=lld
-
Adam Nemet authored
We should only add the fake lowering entry for the matrix remark if the transpose is not lowered on its own. `MapVector::insert` is used to insert the entry during proper lowering which does not overwrite the fake entry in the map. We actually had test coverage for this but the reference output code was wrong; it was storing undef rather than the transposed column. Also add an assert that would have caught this. Differential Revision: https://reviews.llvm.org/D106457
-
Marius Brehler authored
Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D106539
-
Krishna Kariya authored
This goes with D101727 (adds FMF to the select). Differential Revision: https://reviews.llvm.org/D106563
-
Alex Lorenz authored
This commit adds driver support for the Mac Catalyst target, as supported by the Apple clang compile Differential Revision: https://reviews.llvm.org/D105960
-
David Green authored
This changes the cost to (LT.first-1) * cost(add) + 2, where the cost of an add is assumed to be 1. This brings it inline with the other reductions. Differential Revision: https://reviews.llvm.org/D106240
-