- Mar 30, 2022
-
-
Chenbing Zheng authored
This patch add some tests to show some optimization opportunities for bitreverse-shift. Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D121507
-
Zakk Chen authored
masked compare and vmsbf/vmsif/vmsof are always tail agnostic, we could check maskedoff value to decide mask policy rather than have a addtional policy operand. Reviewed By: craig.topper, arcbbb Differential Revision: https://reviews.llvm.org/D122456
-
Zakk Chen authored
This reverts commit 10fd2822. I have a better implementation for those operations without the additional policy operand. masked compare and vmsbf/vmsif/vmsof are always tail agnostic so we could assume undef maskedoff is mask agnostic. Differential Revision: https://reviews.llvm.org/D122455
-
Dominic Chen authored
Revert "[scudo] Add noreturn/pragma to suppress compiler warnings" This reverts commit 686dcbe8. This reverts commit 030d8262.
-
Dominic Chen authored
Ensure that extern allocator declaration is visible before definition Differential Revision: https://reviews.llvm.org/D121848
-
Dominic Chen authored
Fixes: [scudo] Add noreturn/pragma to suppress compiler warnings Differential Revision: https://reviews.llvm.org/D121853
-
Roland McGrath authored
This is a re-land of https://reviews.llvm.org/D86171 with fix. Fuchsia's system libraries are instrumented and use the lsan allocator for internal purposes. So leak checking needs to run after all atexit hooks and after the system libraries' internal exit-time hooks. The <zircon/sanitizer.h> hook API calls the __sanitizer_process_exit_hook function at exactly the right time. Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D88248
-
Michael Jones authored
In the previous patch adding -mfma to functions that need it for windows builds I missed log2f. Differential Revision: https://reviews.llvm.org/D122693
-
Michael Jones authored
On Windows the functions that use fma don't properly include the fma intrinsics unless -mfma is added to the compile options. This patch adds the compile option to all of the functions that need it. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D122689
-
Michael Jones authored
Previously, the "fsqrt" instruction was used on all x86_64 platforms for finding the square root of long doubles. On long double is double platforms (e.g. windows) this created errors. This patch changes square root function for long doubles to be the same as the one for doubles if long doubles are doubles. Reviewed By: sivachandra, lntue Differential Revision: https://reviews.llvm.org/D122688
-
Akira Hatanaka authored
Also, check that NRVO currently isn't performed in test25. The checks were accidentally removed when https://reviews.llvm.org/D122425 disabled inlining.
-
Jonas Devlieghere authored
-
Chris Bieneman authored
HLSL uses Microsoft-style attributes `[attr]`, which clang mostly ignores. For HLSL we need to handle known Microsoft attributes, and to maintain C/C++ as-is we ignore unknown attributes. To utilize this new code path, this change adds the HLSL `numthreads` attribute. Reviewed By: rnk Differential Revision: https://reviews.llvm.org/D122627
-
Vince Bridgers authored
clang: <root>/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp:727: void assertEqualBitWidths(clang::ento::ProgramStateRef, clang::ento::Loc, clang::ento::Loc): Assertion `RhsBitwidth == LhsBitwidth && "RhsLoc and LhsLoc bitwidth must be same!"' This change adjusts the bitwidth of the smaller operand for an evalBinOp as a result of a comparison operation. This can occur in the specific case represented by the test cases for a target with different pointer sizes. Reviewed By: NoQ Differential Revision: https://reviews.llvm.org/D122513
-
Yonghong Song authored
Delyan Kratunov reported an issue where __builtin_memcmp is not inlined into simple load/compare instructions. This is a known issue. In the current state, __builtin_memcmp will be converted to memcmp call which won't work for bpf programs. This patch added support for expanding __builtin_memcmp with actual loads and compares up to currently maximum 128 total loads. The implementation is identical to PowerPC. Differential Revision: https://reviews.llvm.org/D122676
-
Shraiysh Vaishay authored
Reviewed By: ftynse, rriddle Differential Revision: https://reviews.llvm.org/D122633
-
Florian Hahn authored
In some case, like in the added test case, we can reach selectInterleaveCount with loops that actually have a cost of 0. Unfortunately a loop cost of 0 is also used to communicate that the cost has not been computed yet. To resolve the crash, bail out if the cost remains zero after computing it. This seems like the best option, as there are multiple code paths that return a cost of 0 to force a computation in selectInterleaveCount. Computing the cost at multiple places up front there would unnecessarily complicate the logic. Fixes #54413.
-
Zixu Wang authored
Add support for Objective-C protocol declarations in ExtractAPI. Depends on D122446 Differential Revision: https://reviews.llvm.org/D122511
-
Vitaly Buka authored
Differential Revision: https://reviews.llvm.org/D122685
-
James Y Knight authored
Fixes: d6148749
-
Zixu Wang authored
Add support for Objective-C interface declarations in ExtractAPI. Depends on D122495 Differential Revision: https://reviews.llvm.org/D122446
-
Dominic Chen authored
Differential Revision: https://reviews.llvm.org/D121853
-
Dominic Chen authored
Add include to resolve compiler warning about no previous extern declaration for non-static HashAlgorithm Differential Revision: https://reviews.llvm.org/D122630
-
Dominic Chen authored
The called member function has boolean type, change this function to match Differential Revision: https://reviews.llvm.org/D122631
-
Dominic Chen authored
Compiler warns about HeaderPos possibly being uninitialized which should not be possible, but just initialize it anyway Differential Revision: https://reviews.llvm.org/D122632
-
Benjamin Kramer authored
linalg.generic can also take scalars instead of tensors, which tensor.cast doesn't support. We don't have an easy way to cast between scalars and tensors so just keep the linalg.generic in those cases. Differential Revision: https://reviews.llvm.org/D122575
-
Eli Friedman authored
On targets which don't allow "@" in unquoted identifiers, make sure we don't emit them; otherwise, we can't parse our own output. Differential Revision: https://reviews.llvm.org/D122516
-
Vitaly Buka authored
-
Chris Bieneman authored
Adds DXContainer to switch statements in Clang and LLDB to silence warnings.
-
Chris Bieneman authored
DXIL is wrapped in a container format defined by the DirectX 11 specification. Codebases differ in calling this format either DXBC or DXILContainer. Since eventually we want to add support for DXBC as a target architecture and the format is used by DXBC and DXIL, I've termed it DXContainer here. Most of the changes in this patch are just adding cases to switch statements to address warnings. Reviewed By: pete Differential Revision: https://reviews.llvm.org/D122062
-
Florian Hahn authored
This patch moves the code to set the correct incoming block for the backedge value to VPlan::execute. When generating the phi node, the backedge value is temporarily added using the pre-header as incoming block. The invalid phi node will be fixed up during VPlan::execute after main VPlan code generation. At the same time, the backedge value is also moved to the latch. This change removes the requirement to create the latch block up-front for VPWidenInductionPHIRecipe::execute, which in turn will enable modeling the pre-header in VPlan. Depends on D121617. Reviewed By: Ayal Differential Revision: https://reviews.llvm.org/D121618
-
Sanjay Patel authored
The same test was duplicated in 2 files.
-
Markus Böck authored
DR: http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#1305 This DR has always been implemented in all clang versions as far back as I could go. This patch basically just adds a test with the needed comments to mark it as complete. Differential Revision: https://reviews.llvm.org/D122674
-
wangyihan authored
Remove anonymous tag locations, powered by 'PrintingPolicy', @aaron.ballman once suggested removing this extra information in https://reviews.llvm.org/D122248 struct: struct S { int a; struct /* Anonymous*/ { int x; } b; int c; }; Before: struct S { int a = 0 struct S::(unnamed at ./builtin_dump_struct.c:20:3) { int x = 0 } int c = 0 } After: struct S { int a = 0 struct S::(unnamed) { int x = 0 } int c = 0 } Differntial Revision: https://reviews.llvm.org/D122670
-
Chris Bieneman authored
Somehow managed to get a double-assignment in there. Thanks @erichkeane for pointing it out!
-
Stanislav Mekhanoshin authored
Differntial Revision: https://reviews.llvm.org/D122339
-
Mehdi Amini authored
This reverts commit 23519d30. This breaks the build with clang-5: /usr/bin/clang-5.0 -DBUILD_EXAMPLES -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/Support/BLAKE3 -Illvm/lib/Support/BLAKE3 -Iinclude -Illvm/include -fPIC -O3 -DNDEBUG -MD -MT lib/Support/BLAKE3/CMakeFiles/LLVMSupportBlake3.dir/blake3_avx512_x86-64_unix.S.o -MF lib/Support/BLAKE3/CMakeFiles/LLVMSupportBlake3.dir/blake3_avx512_x86-64_unix.S.o.d -o lib/Support/BLAKE3/CMakeFiles/LLVMSupportBlake3.dir/blake3_avx512_x86-64_unix.S.o -c llvm/lib/Support/BLAKE3/blake3_avx512_x86-64_unix.S ... llvm/lib/Support/BLAKE3/blake3_avx512_x86-64_unix.S:54:9: error: instruction requires: AVX-512 ISA kmovw k1, r9d ^
-
Chris Bieneman authored
Adding an initializer list specialization for is_contained allows for compile-time evaluation when called with a constant or runtime evaluation for non-constant values. This patch doesn't add any uses of this template, but that is coming in a subsequent patch. Reviewed By: pete Differential Revision: https://reviews.llvm.org/D122079
-
wangyihan authored
Remove duplicate items in ReleaseNotes for __builtin_dump_struct, the code changes int patch https://reviews.llvm.org/D122248 Differential Revision: https://reviews.llvm.org/D122668
-
Zixu Wang authored
The current way of getting the `clang::Language` from `LangOptions` does not handle Objective-C correctly because `clang::Language::ObjC` does not correspond to any `LangStandard`. This patch passes the correct `Language` from the frontend input information. Differential Revision: https://reviews.llvm.org/D122495
-