- Aug 16, 2023
-
-
Noah Goldstein authored
Add additional cases for: select, vselect, {u,s}{min,max}, and, casts, rotl, rotr And improve handling of constants and shifts. Differential Revision: https://reviews.llvm.org/D156778 -
Noah Goldstein authored
1) Handle casts a bit more cleanly just with a loop rather than with recursion. 2) Add additional cases for smin/smax 3 ) For shifts we can also deduce non-zero if the maximum shift amount on the known 1s is non-zero. Differential Revision: https://reviews.llvm.org/D156777 -
Noah Goldstein authored
Differential Revision: https://reviews.llvm.org/D156776
-
Noah Goldstein authored
Differential Revision: https://reviews.llvm.org/D156775
-
Vitaly Buka authored
Looks Android and Darwin fail because of alignment.
-
Vitaly Buka authored
Darwin and Linux use a different fields order, causing "warning: ISO C++ requires field designators to be specified in declaration order".
-
Nikita Popov authored
These deprecations break the -Werror=deprecated-declarations build. Deprecations in LLVM must always be preceded by a removal of *all* in-tree users.
-
Vitaly Buka authored
Probably alignment as Darwin.
-
Vitaly Buka authored
And make build script incremental. We will eventually convert the script into ExternalProject_Add. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D158044
-
Ethan Luis McDonough authored
This patch extends the existing WsLoop reduction IR generation to parallel blocks. Reviewed By: kiranchandramohan Differential Revision: https://reviews.llvm.org/D155157
-
Valentin Clement authored
Attch the routine info attribute to the func operation. Reviewed By: razvanlupusoru Differential Revision: https://reviews.llvm.org/D157998
-
Justin Bogner authored
This change adds support for accessing information about inline assembly calls through the C API, enough to be able to round-trip the information. This partially addresses https://llvm.org/pr42692 which points out gaps in the C API Getters for each of the parameters to LLVMGetInlineAsm/InlineAsm::get have been added, such that the C API now has enough surface to clone inline assembly calls This API currently only returns the raw constraint string via LLVMGetInlineAsmConstraintString: it may be prudent to also expose the parsed constraints via InlineAsm::ParseConstraints, but I wasn't sure how that should look like. This at least exposes the information for clients Patch by Benji Smith. Thanks! Differential Revision: https://reviews.llvm.org/D153185
-
Justin Bogner authored
Remove DXCOption from a whole bunch of options that we probably won't support in the DXC driver. The initial clang-dxc support just made everything that was a "CoreOption" available, regardless of whether it made sense. Here I don't remove all of them, but this makes a dent on making the list a bit more sensible. We can easily add or remove more if they make sense later. Differential Revision: https://reviews.llvm.org/D158037
-
Christopher Ferris authored
All of the places that use the Classes array, use it as a uptr. So change the array to be uptr instead of u32. Reviewed By: Chia-hungDuan Differential Revision: https://reviews.llvm.org/D158048
-
Kazushi (Jam) Marukawa authored
-
Aiden Grossman authored
This was added originally as the test was failing on NVPTX before an explicit target triple was set on the llc invocation. The test was fixed in 4afb1ee7 but the unsupported directive was never removed.
-
Jian Cai authored
This fixed a test failure that caused the rollback of the original commit. Verified with ninja check-mlir.
-
Alfred Persson Forsberg authored
The LLVM-libc build itself will override include paths and prefer it's own limits.h over the compiler's limits.h. Because we rely on the compiler limits.h for numerical limits in LLVM-libc it needs to be include_next:ed if not already included. The other method to work around this is to define all numeric macros in place. Signed-off-by:
Alfred Persson Forsberg <cat@catcream.org> Reviewed By: thesamesam Differential Revision: https://reviews.llvm.org/D158040
-
Daniel Hoekwater authored
This reverts commit 1670e0ea. Causes https://lab.llvm.org/buildbot/#/builders/188/builds/33943
-
Daniel Hoekwater authored
Because the code layout is not known during compilation, the distance of cross-section jumps is not knowable at compile-time. Because of this, we should assume that any cross-sectional jumps are out of range. This assumption is necessary for machine function splitting on AArch64, which introduces cross-section branches in the middle of functions. The linker relaxes out-of-range unconditional branches, but it clobbers X16 to do so; it doesn't relax conditional branches, which must be manually relaxed by the compiler. Differential Revision: https://reviews.llvm.org/D145211
-
Sam Clegg authored
This change writes the module name to the name section of the wasm binary. We use the `-soname` argument to determine the name and we default the output file basename if this option is not specified. In the future we will likely want to embed the soname in the dylink section too, but this the first step in supporting `-soname`. Differential Revision: https://reviews.llvm.org/D158001
-
Daniel Hoekwater authored
Machine function splitting will become available for AArch64; since MFS is no longer X86-only, the tests for generic behavior should live somewhere other than tests/CodeGen/X86. MFS implementation doesn't vary much across platforms, and most tests should be identical between X86 and AArch64 besides instruction selection, so the tests can live together in tests/CodeGen/Generic. Differential Revision: https://reviews.llvm.org/D157563
-
Vitaly Buka authored
Watching https://green.lab.llvm.org/green/job/clang-stage1-RA/
-
Yeting Kuo authored
This adds extension Zicfilp and support pseudo instruction lpad. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D157362
-
Aart Bik authored
Direct IR supports pack, but libgen parth did not until this was added in https://reviews.llvm.org/D158012 Reviewed By: Peiming Differential Revision: https://reviews.llvm.org/D158020
-
Sam Clegg authored
If we don't do this then we end up with symbols that refer to non-existent segments. Differential Revision: https://reviews.llvm.org/D158025
-
Brad Smith authored
Also while here sync the header paths with the Haiku GCC configuration. Added: /boot/system/develop/headers/gnu Removed: /boot/system/develop/headers/os/arch https://github.com/haikuports/haikuports/tree/master/sys-devel/gcc/patches Reviewed By: nielx Differential Revision: https://reviews.llvm.org/D157767
-
Jon Roelofs authored
This often breaks modules-enabled bootstrap builds.
-
Justin Bogner authored
This splits the backend and assemble actions for HLSL inputs and handles the options in GetNamedOutputPath instead of aliasing `-o`. This also moves how we default to emitting asm to stdout, since doing this in the HLSL toolchain rather than the driver pollutes how the clang driver works as well. When both options are specified we disable collapsing the assemble action and attempt to generate both outputs. Note that while this handles the driver aspects, we can't actually run in that mode for now since -cc1as doesn't understand DXIL as an input yet. Differential Revision: https://reviews.llvm.org/D157582
-
Michael Jones authored
To guarantee accuracy for all potential float values, this patch adds a fuzzer to compare the results for float conversions from our printf against MPFR's. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D156495
-
Michael Jones authored
Fuzzing revealed bugs in the %e and %g conversions. Since these are very similar, they are grouped together. Again, most of the bugs were related to rounding. As an example, previously the code to check if the number was truncated only worked for digits below the decimal point, due to it being originally designed for %f. This patch adds a mechanism to check the digits above the decimal point for both %e and %g. Reviewed By: sivachandra, lntue Differential Revision: https://reviews.llvm.org/D157536
-
Michael Jones authored
Fuzzing revealed several bugs in the %f float conversion. This patch fixes them. Most of these bugs are related to rounding, such as 1.999...999 being rounded to 2.999...999 instead of 2.000...000 due to rounding up not properly changing the nines to zeros. Additionally, much of the rounding infrastructure has been refactored out so it can be shared with the other conversions. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D157535
-
Michael Jones authored
The trailing zeroes were previously not counted when calculating the padding, which caused a high-precision number to get too much padding. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D157534
-
Michael Jones authored
In the same way that get_explicit_mantissa is used to get the mantissa with all the implicit bits spelled out, get_explicit_exponent gives you the exponent with the special cases handled. Mainly it handles the cases where the exponent is zero, which causes the exponent to either be 1 higher than expected, or just 0. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D157156
-
Justin Bogner authored
Rather than redefine --help, /help, -D, and /D, just use the existing options.
-
Augusto Noronha authored
This reverts commit 5d169572.
-
Stanislav Mekhanoshin authored
Differential Revision: https://reviews.llvm.org/D158030
-
Mehdi Amini authored
This reverts commit 02596693. This reverts commit 3c5b4dab. The build is broken: mlir/test/lib/Dialect/Test/TestOps.td:988:7: error: Value specified for template argument 'Pat:supplemental_results' is of type dag; expected type list<dag>: (addBenefit 10) def : Pat<(OpD $input), (OpF $input), [], (addBenefit 10)>; ^
-
Augusto Noronha authored
This patch picks up where https://reviews.llvm.org/D157159 left of, but allows for concurrent reads/writes, but protects setting up and tearing down the underlying Connection object. Differential Revision: https://reviews.llvm.org/D157760
-
Rashmi Mudduluru authored
Differential Revision: https://reviews.llvm.org/D157018
-