-
Notifications
You must be signed in to change notification settings - Fork 734
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LLVM and SPIRV-LLVM-Translator pulldown (WW35) #2362
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The getSrcFromCopy helper nowadays return a MachineOperand pointer, so talking about zero_reg was incorrect as it nowadays return a nullptr when not finding a copy like instruction.
This was accidentally added in 53b9199 Differential Revision: https://reviews.llvm.org/D86284
Currently, clangd crashes when opening a file with `#pragma clang __debug parser_crash` (e.g. clang/test/Modules/Inputs/crash.h). This patch disables these crashes. Reviewed By: kadircet Differential Revision: https://reviews.llvm.org/D86279
…n-clang-tidy.py The action='store_true' option of argparse.add_argument implicitly generates a default value of False if the argument is not specified. Thus, the allow_enabling_alpha_checkers argument of get_tidy_invocation is never None.
This is very similar to D85968, only more elusive to since we were not adding the typedef type to the relevant DeclContext until D86140, which meant that the DeclContext was populated (and the relevant assertion hit) only after importing the type into the expression ast in a particular way. I haven't checked whether this situation can be hit in the gmodules case, but my money is on "yes". Differential Revision: https://reviews.llvm.org/D86216
This reverts commit d58fd4e. This broke compiler-rt compilation on macOS: codesign --sign - /Users/buildslave/jenkins/workspace/lldb-cmake/lldb-build/lib/clang/12.0.99/lib/darwin/libclang_rt.tsan_ios_dynamic.dylib ld: warning: ignoring file projects/compiler-rt/lib/tsan/CMakeFiles/clang_rt.tsan_ios_dynamic.dir/rtl/tsan_rtl_amd64.S.o, building for iOS-arm64 but attempting to link with file built for iOS Simulator-x86_64 ld: warning: ignoring file projects/compiler-rt/lib/tsan/CMakeFiles/clang_rt.tsan_ios_dynamic.dir/rtl/tsan_rtl_aarch64.S.o, building for iOS-arm64 but attempting to link with file built for iOS Simulator-x86_64 Undefined symbols for architecture arm64: "_wrap__setjmp", referenced from: substitution__setjmp in tsan_interceptors_posix.cpp.o "_wrap_setjmp", referenced from: substitution_setjmp in tsan_interceptors_posix.cpp.o "_wrap_sigsetjmp", referenced from: substitution_sigsetjmp in tsan_interceptors_posix.cpp.o ld: symbol(s) not found for architecture arm64
The normal scheme for tail folding reductions is to use: loop: p = phi(0, a) mask = ... x = masked_load(..., mask) a = add(x, p) s = select(mask, a, p) This means we need to keep the register p and a alive out of the loop, plus the mask. On a target with predicated operations we can instead generate the phi as p = phi(0, s). This ensures the select in the loop and we can fold select(m, add(a, b), c) to something like a vaddt c, a, b using the m predicate. This in turn allows us to tail predicate the entire loop. Differential Revision: https://reviews.llvm.org/D84741
This caused failures on clang-x390x-linux.
The dependencies in clang/lib/IndexSerialization/CMakeLists.txt were incomplete, leading to link errors for a -DBUILD_SHARED_LIBS=True build.
Similarly to D85836, collapse all Scalar float types to a single enum value, and use APFloat semantics to differentiate between. This simplifies the code, and opens to door to supporting other floating point semantics (which would be needed for fully supporting architectures with more interesting float types such as PPC). Differential Revision: https://reviews.llvm.org/D86220
Otherwise the docs-lld-html target fails to build using recent Sphinx with the following not very helpful error message: An error happened in rendering the page index. Reason: TemplateNotFound() It turns out the values in the html_sidebars dictionary always need to be lists now. See sphinx-doc/sphinx#6186
Differential Revision: https://reviews.llvm.org/D86227
Differential Revision: https://reviews.llvm.org/D86139
Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D86267
At this point we have already ruled out all def operands, so we can't possibly see a dead implicit def operand.
…ats. This class helps in dealing with normal and subnormal numbers uniformly. Moreover, since this class has been designed to handle all floating formats across platforms, it helps implement floating point functions in a uniform manner. The implementations of frexp and logb have been switched to use this new class as it allows us to use just one implementation across all different floating point formats. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D86241
`lldb_private::ScriptInterpreterPython::CommandDataPython` inherits from `lldb_private::BreakpointOptions::CommandData`, but the latter does not have a virtual destructor. This leads to a new-delete-type-mismatch error when running certain tests (such as `functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py`) under asan.
This exposes the module optimization pipeline as a pass that can be applied stand-alone when using 'opt'. This helps ml inliner training scenarios, where we start with IR captured right before inlining, perform the inlining (-scc-oz-module-inliner) and then want to continue and observe the final IR (where this patch comes into play). We can then apply llc on the resulting IR to continue compilation down to native. Differential Revision: https://reviews.llvm.org/D86224
... in favour of the isPhysical/isVirtual methods.
Currently we don't do anything about these, neither in InstCombine, nor in SimplifyCFG's sinking. These happen exceedingly rarely, but i've seen them in the cases where PHI-aware aggregate reconstruction would have fired if not for them.
This ensures that we never encode an instruction which is unavailable, such as if we explicitly insert a forbidden instruction when lowering. This is particularly important on RISC-V given its high degree of modularity, and will become increasingly important as new standard extensions appear. Reviewed By: asb, lenary Differential Revision: https://reviews.llvm.org/D85015
There are no nxv16i8/nxv8i16 SDIV instructions, so these fixed width operations must be promoted to nxv4i32. Differential Revision: https://reviews.llvm.org/D86114
1. created a common completion for breakpoint names; 2. bound the breakpoint name common completion with eArgTypeBreakpointName; 3. implemented the dedicated completion for breakpoint read -N. Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D80693
Then it is trivial to make the output indented (the second parameter of json::OStream::OStream specifies the indentation). Reviewed By: jhenderson, echristo Differential Revision: https://reviews.llvm.org/D86045
After removing the unnecessary `-mmacosx-version-min=10.12` compiler flag this test can run on all platforms. I confirmed that this test is green for iOS, iOS simulator, and watchOS simulator. Differential Revision: https://reviews.llvm.org/D85952
Move fixed length SDIV tests from sve-fixed-length-int-arith.ll to sve-fixed-length-int-div.ll. The former uses CHECK lines that verify legalization decisions. That's overkill for the i8/i16 SDIV tests, since they have a tricky legalization.
We don't test on very old versions of Apple platforms anymore. The following lit substitution concerning the minimum deployment target for ARC support can be removed. ``` %darwin_min_target_with_full_runtime_arc_support -> 10.11 ``` Differential Revision: https://reviews.llvm.org/D85803
vladimirlaz
requested review from
AlexeySachkov,
AlexeySotkin,
bader,
elizabethandrews,
Fznamznon,
mdtoguchi and
premanandrao
as code owners
August 24, 2020 12:48
Added SPIRVEntry::getDecoration(Decoration Kind) method returning vector of SPIRVDecorate* containing all decoration ptrs of matching Kind
Added new ctors for SPIRVDecorate and SPIRVDecoarteGeneric accepting two SPIRVWord for decorations with 2 literals
Added following decorations for function VCFloatControl attributes: DecorateFunctionRoundingModeINTEL DecorateFunctionDenormModeINTEL DecorateFunctionFloatingPointModeINTEL
The old version expected only extractelement instructions as users of load from built-in variable, whereas it is possible to get other kinds of instructions as users of this load. This patch replaces load from built-in global variable with a vector filled with ids.
This patch follows from 71039dd3c5dbfafab78f6b86a5bb06ba2af93c89 * Replaced the destination operand with the result of its intrinsic call for store inst. * Replaced the read-from operand with the result of its intrinsic call for load inst.
Propagate the change from LLVM commit 24c3dab ("DebugInfo: Emit class template parameters first, before members", 2020-08-17).
Update for LLVM commit a407ec9 ("Revert "Revert "[NFC][llvm] Make the contructors of `ElementCount` private.""", 2020-08-19).
vladimirlaz
force-pushed
the
llvmspirv_pulldown
branch
from
August 24, 2020 13:46
d84b739
to
158175f
Compare
vladimirlaz
changed the title
LLVM and SPIRV-LLVM-Translator pulldown (WW35)
[WIP] LLVM and SPIRV-LLVM-Translator pulldown (WW35)
Aug 24, 2020
It looks like conflict resolution in sycl-web was inaccurate. Working on the fix. |
vladimirlaz
changed the title
[WIP] LLVM and SPIRV-LLVM-Translator pulldown (WW35)
LLVM and SPIRV-LLVM-Translator pulldown (WW35)
Aug 24, 2020
/run:summary |
/summary:run |
jsji
pushed a commit
that referenced
this pull request
Feb 15, 2024
For now just convert BB with convertFromNewDbgValues, will figure out something smarter a bit later. I've updated several tests with dbg.declare intrinsic adding --experimental-debuginfo-iterators=1 to check if it works. Signed-off-by: Sidorov, Dmitry <dmitry.sidorov@intel.com> Original commit: KhronosGroup/SPIRV-LLVM-Translator@0e87aefecf7c500
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
LLVM: llvm/llvm-project@3d1b0000
SPIRV-LLVM-Translator: KhronosGroup/SPIRV-LLVM-Translator@0bcb157a