- Jul 17, 2021
-
-
Mehdi Amini authored
Ensure that libSupport does not carry any static global initializer. libSupport can be embedded in use cases where we don't want to load all cl::opt unless we want to parse the command line. ManagedStatic can be used to enable lazy-initialization of globals.
-
David Green authored
Fix a silly mistake that was not making sure that _both_ operands were the correct extend code.
-
Sami Tolvanen authored
This reverts commit 8e3b5cb3. Reverting to investigate test failures.
-
Sami Tolvanen authored
Create an internal alias with the original name for static functions that are renamed in promoteInternals to avoid breaking inline assembly references to them. This version uses module inline assembly to avoid issues with LowerTypeTestsModule. Link: https://github.com/ClangBuiltLinux/linux/issues/1354 Reviewed By: nickdesaulniers, pcc Differential Revision: https://reviews.llvm.org/D104058
-
Nemanja Ivanovic authored
This provides intrinsics for emitting instructions that set the FPSCR (`mtfsf/mtfsfi`). The patch also conservatively marks the rounding mode as an implicit def for both since they both may set the rounding mode depending on the operands. Reviewed By: #powerpc, qiucf Differential Revision: https://reviews.llvm.org/D105957
-
Mehdi Amini authored
This fixes running `ninja check-mlir` from a clean build when the integration tests are enabled.
-
Geoffrey Martin-Noble authored
This avoids Bazel recursing into these directories when overlayed, which will break if someone has run Bazel in these dirs (which would only be successful with the http_archive example) because of the Bazel directory symlinks (already gitignored). Reviewed By: jpienaar Differential Revision: https://reviews.llvm.org/D105357
-
Geoffrey Martin-Noble authored
Add explicit coverage provider. Also remove output_to_genfiles which isn't necessary for this test (it's just copy-pasta from gentbl_rule, which needs it for output C++ header files). Reviewed By: jpienaar Differential Revision: https://reviews.llvm.org/D106115
-
Geoffrey Martin-Noble authored
We do a lot of path munging and bazel_sklyib is a pretty reasonable dep. Reviewed By: jpienaar Differential Revision: https://reviews.llvm.org/D106175
-
Alexey Bataev authored
Part of D105020. Also, fixed FIXMEs that need to use wider vector type when trying to calculate the cost of reused scalars. This may cause regressions unless D100486 is landed to improve the cost estimations for long vectors shuffling. Differential Revision: https://reviews.llvm.org/D106060
-
LLVM GN Syncbot authored
-
Amara Emerson authored
s56 stores are broken down into s32 + s24 stores. During this step both of those new stores use an anyextended s64 value, resulting in truncating stores. With s56, the s24 requires another lower step to make it legal, and we were crashing because we didn't expect non-pow-2 stores to also be truncating as well. Differential Revision: https://reviews.llvm.org/D106183
-
Fangrui Song authored
-
Emily Shi authored
This is required for no-fd.cpp test rdar://79354597 Differential Revision: https://reviews.llvm.org/D106174
-
Martin Storsjö authored
The checks within the libc++experimental memory_resource class uses this limit: _MaxAlign = _LIBCPP_ALIGNOF(max_align_t); Therefore, only use max_align_t for this limit instead of using `__STDCPP_DEFAULT_NEW_ALIGNMENT__` if available. Differential Revision: https://reviews.llvm.org/D105905 -
Alexey Bataev authored
The cost of the InsertSubvector shuffle kind cost is not complete and may end up with just extracts + inserts costs in many cases. Added a workaround to represent it as a generic PermuteSingleSrc, which is still pessimistic but better than InsertSubvector. Differential Revision: https://reviews.llvm.org/D105827
-
Nico Weber authored
-
Jon Roelofs authored
This fixes the test I broke in: https://reviews.llvm.org/D105953#2883579 Differential revision: https://reviews.llvm.org/D106168
-
Mark Leair authored
-
Fangrui Song authored
llvm-readelf is a user-facing tool which emulates GNU readelf. Remove one-dash long options which are not recognized by GNU style `getopt_long`. This ensures long options cannot collide with grouped short options. Note: the documentation (D63719)/help messages have recommended the double-dash forms since LLVM 9.0.0. llvm-readobj is intended as an internal tool which has some flexibility. llvm-readelf/llvm-readobj use the same option parsing code and llvm-readobj's one-dash long options aren't used after test migration. Differential Revision: https://reviews.llvm.org/D106037
-
Fangrui Song authored
-
David Green authored
-
Simon Pilgrim authored
Fixes issue reported on D105827 where a single shuffle of a constant (with multiple uses) was caught in an infinite loop where one shuffle (UNPCKL) used an undef arg but then that got recombined to SHUFPS as the constant value had its own undef that confused matching.....
-
Lei Huang authored
Implement a subset of builtins required for compatiblilty with AIX XL compiler. Reviewed By: nemanjai Differential Revision: https://reviews.llvm.org/D105930
-
Joseph Huber authored
-
Joseph Huber authored
This patch begins adding documentation for each remark emitted by `openmp-opt`. This builds on the IDs introduced in D105939 so that users can more easily identify each remark in the webpage. Depends on D105939. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D106018
-
Joseph Huber authored
This patch adds unique idenfitiers to the existing OpenMP remarks. This makes it easier to identify the corresponding documentation for each remark that will be hosted in the OpenMP webpage. Depends on D105898 Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D105939
-
Joseph Huber authored
This patch rewrites and reworks a few of the existing remarks to make the mmore concise and consistent prior to writing the documentation for them. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D105898
-
Dmitry Vyukov authored
Windows bot failed with: sanitizer_win.cpp.obj : error LNK2019: unresolved external symbol WaitOnAddress referenced in function "void __cdecl __sanitizer::FutexWait(struct __sanitizer::atomic_uint32_t *,unsigned int)" (?FutexWait@__sanitizer@@YAXPEAUatomic_uint32_t@1@I@Z) sanitizer_win.cpp.obj : error LNK2019: unresolved external symbol WakeByAddressSingle referenced in function "void __cdecl __sanitizer::FutexWake(struct __sanitizer::atomic_uint32_t *,unsigned int)" (?FutexWake@__sanitizer@@YAXPEAUatomic_uint32_t@1@I@Z) sanitizer_win.cpp.obj : error LNK2019: unresolved external symbol WakeByAddressAll referenced in function "void __cdecl __sanitizer::FutexWake(struct __sanitizer::atomic_uint32_t *,unsigned int)" (?FutexWake@__sanitizer@@YAXPEAUatomic_uint32_t@1@I@Z) https://lab.llvm.org/buildbot/#/builders/127/builds/14046 According to MSDN we need to link Synchronization.lib: https://docs.microsoft.com/en-us/windows/win32/api/synchapi/nf-synchapi-waitonaddress Differential Revision: https://reviews.llvm.org/D106167
-
Emily Shi authored
This was fixed in the past for `frexp`, but was not made for `frexpl` & `frexpf` https://github.com/google/sanitizers/issues/321 This patch copies the fix over to `frexpl` because it caused `frexp_interceptor.cpp` test to fail on iPhone and `frexpf` for consistency. rdar://79652161 Reviewed By: delcypher, vitalybuka Differential Revision: https://reviews.llvm.org/D104948
-
Philip Reames authored
-
Aart Bik authored
Removed inconsistent name prefixes, added consistency checks on debug strings, added more assertions to verify assumptions that may be lifted in the future. Reviewed By: gussmith23 Differential Revision: https://reviews.llvm.org/D106108
-
Stefan Pintilie authored
On Power PC some legacy compilers included a number of builtins in a builtins.h header file. While this header file is not required to hold builtins for clang some legacy code does try to include this file and so this patch provides an empty version of that file. Differential Revision: https://reviews.llvm.org/D106065
-
Craig Topper authored
-
Craig Topper authored
This adds new pseudoinstructions with ForceTailAgnostic set. This matches what we did for non-widening VMACC. We should move to a tail policy operand on the pseudos when we expand the intrinsic interface to include the tail policy.
-
Craig Topper authored
[RISCV] Refactor where in the multiclass hierarchy we add commutable VFMADD/VFMACC instructions. NFC I'm preparing to add tail agnostic versions of VWMACC and VFWMACC so this will make them more consistent.
-
Fangrui Song authored
-
Dmitry Vyukov authored
Semaphore is a portable way to park/unpark threads. The plan is to use it to implement a portable blocking mutex in subsequent changes. Semaphore can also be used to efficiently wait for other things (e.g. we currently spin to synchronize thread creation and start). Reviewed By: vitalybuka, melver Differential Revision: https://reviews.llvm.org/D106071
-
Philip Reames authored
-
Guozhi Wei authored
This patch transforms the sequence lea (reg1, reg2), reg3 sub reg3, reg4 to two sub instructions sub reg1, reg4 sub reg2, reg4 Similar optimization can also be applied to LEA/ADD sequence. The modifications to TwoAddressInstructionPass is to ensure the operands of ADD instruction has expected order (the dest register of LEA should be src register of ADD). Differential Revision: https://reviews.llvm.org/D104684
-