- Mar 08, 2023
-
-
Mikael Holmen authored
As we've seen in https://github.com/llvm/llvm-project/issues/58285 throwing away MemorySSA when only debug instructions are removed can lead to different code when debug info is present or not present. This is the second attempt at fixing the problem. The first one was https://reviews.llvm.org/D145051 which was reverted due to a 15% compile time regression for tramp3d-v4 in NewPM-ReleaseLTO-g.
-
Vitaly Buka authored
-
Wu, Yingcong authored
`CollectDataFlow()` uses `Flags.collect_data_flow` and `Flags.data_flow_trace` at the same time. But in the null check before the invocation, only `Flags.collect_data_flow` is checked, and there is no other method to make sure `Flags.data_flow_trace` is not null, so adding a null check for `Flags.data_flow_trace`. Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D145040
-
Wu, Yingcong authored
Some printf format strings in libfuzzer are using the wrong specifizers, fix in this commit. Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D145033
-
Bojun Seo authored
Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D145354
-
Dave MacLachlan authored
Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D145461
-
Christopher Ferris authored
The Android svelte allocator is not used, and will likely require some configuration and experimentation to find a balanced config. Leave the svelte config and size map so they can be used as the basis for the future Android svelte config. Reviewed By: Chia-hungDuan Differential Revision: https://reviews.llvm.org/D145525
-
Argyrios Kyrtzidis authored
Differential Revision: https://reviews.llvm.org/D145473
-
Craig Topper authored
The f32 matching code for fli was hacked to allow the f16 minimum value to match for the fli.h instruction in the assembler. This was done because the assembler parses the floating point literal for fli.h, fli.s, and fli.d as a single precision value. Unfortunately, this function is also used by CodeGen and causes this value to be miscompiled for f32.
-
Jun Zhang authored
Signed-off-by:Jun Zhang <jun@junz.org>
-
Nico Weber authored
This reverts commit 38b9fb5a. Breaks tests on Windows, see comments on https://reviews.llvm.org/D143496
-
Slava Zakharin authored
BIND(C) subprograms must use the same target ABI as the C processor, so 1/2-byte int args/rets must be rewritten to use signext attribute. This change-set also sets fir.bindc_name for the math functions used during lowering so that they can be fixed up as well (though, currently none of them needs to be affected). Differential Revision: https://reviews.llvm.org/D145537
-
Alina Sbirlea authored
Fix after https://github.com/llvm/llvm-project/commit/07158c54add927057690aa8c073d35d42eac7006 Differential Revision: https://reviews.llvm.org/D145533
-
Christudasan Devadasan authored
Currently, the codegen support for llvm.amdgcn.workgroup.id* intrinsics are enabled only for compute kernels. In addition, this patch enables their selection for compute shaders on subtargets that have architected SGPRs. Differential Revision: https://reviews.llvm.org/D145045
-
Konstantin Varlamov authored
-
Craig Topper authored
-
Chen Zheng authored
The merged store touches memory for other underlying objects, so mapping the merged store to the first underlying object is not correct. For example in https://github.com/llvm/llvm-project/issues/60744, the merged store is not correctly analyzed as dependent with memory operations which are also part of the merged store. Fixes #60744 Reviewed By: foad Differential Revision: https://reviews.llvm.org/D144711
-
Chen Zheng authored
-
Alex MacLean authored
Remove the null pointer check on Callee since it is guaranteed to pass by the check at the top of the loop which continues if Callee is null. While this change is somewhat trivial, for what it's worth this check triggers Coverity warnings because it implies that Callee might be null at this point even though it is dereferenced in the preceding code. Reviewed By: mtrofin Differential Revision: https://reviews.llvm.org/D145463
-
Jie Fu authored
/data/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:4841:13: error: enumeration value 'SveCount' not handled in switch [-Werror,-Wswitch] switch (llvm::cast<clang::BuiltinType>(qual_type)->getKind()) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 error generated. -
Jez Ng authored
Reviewed By: #lld-macho, smeenai Differential Revision: https://reviews.llvm.org/D145261
-
Siva Chandra authored
All syscall wrapper functions which have unit tests have been enabled. Reviewed By: kito-cheng Differential Revision: https://reviews.llvm.org/D145452
-
Michael Jones authored
Previously we only linked to the channel within the discord. Differential Revision: https://reviews.llvm.org/D145283
-
Mehdi Amini authored
Differential Revision: https://reviews.llvm.org/D145398
-
Jonas Devlieghere authored
This patch copies over log files to the diagnostic directory. The caveat here is that this only works for logs that are redirected to a file. The implementation piggybacks of the mapping kept by the debugger. The advantage is that it's free until you generate the diagnostics, at which point you only pay the price of copying over the file. Differential revision: https://reviews.llvm.org/D135631
-
Craig Topper authored
We need to check for identifier before optionally parsing a minus sign.
-
Owen Pan authored
See https://reviews.llvm.org/D137486#3910570.
-
Michael Spencer authored
Add `module.modulemap` as a file we cache stat failures for as there are a lot of stats for this file. Clang currently uses the files it should minimize as a proxy for files it should cache stat failures for, but really we should cache stat failures for all paths we don't expect to change during the build. Unfortunately the VFS API does not know _why_ clang is trying to stat a path, so we use the filename as a proxy. Differential Revision: https://reviews.llvm.org/D145526
-
Daniel Thornburgh authored
LLVM_ENABLE_PROJECTS is automatically forwarded from stage 1 builds to stage 2 builds, so setting FUCHSIA_ENABLE_LLDB has no effect on two-stage builds. Instead, add FUCHSIA_ENABLE_LLDB to the stage one build as well. This also disables curses and libedit by default for now in both stage1 and stage 2 builds; these should be opt-in. Reviewed By: haowei Differential Revision: https://reviews.llvm.org/D145449
-
Jez Ng authored
This implements ld64's checks for duplicate method names in categories & classes. In addition, this sets us up for implementing Obj-C category merging. This diff handles the most of the parsing work; what's left is rewriting those category / class structures. Numbers for chromium_framework: base diff difference (95% CI) sys_time 2.182 ± 0.027 2.200 ± 0.047 [ -0.2% .. +1.8%] user_time 6.451 ± 0.034 6.479 ± 0.062 [ -0.0% .. +0.9%] wall_time 6.841 ± 0.048 6.885 ± 0.105 [ -0.1% .. +1.4%] samples 33 22 Fixes https://github.com/llvm/llvm-project/issues/54912. Reviewed By: #lld-macho, thevinster, oontvoo Differential Revision: https://reviews.llvm.org/D142916 -
Jeffrey Tan authored
Adding a new SBDebugger::SetDestroyCallback() API. This API can be used by any client to query for statistics/metrics before exiting debug sessions. Differential Revision: https://reviews.llvm.org/D143520
-
Craig Topper authored
MatchOperand_NoMatch will fall back to regular operand parsing. Returning MatchOperand_ParseFail will prevent this. We also printed our own error message which we should only do for MatchOperand_ParseFail.
-
wren romano authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D145432
-
Owen Pan authored
See https://reviews.llvm.org/D142412#4078127.
-
Han Zhu authored
`RankVectorTypes` is a not an equivalence relation so when it is used in `std::unique`, the behavior is undefined. Create `RankVectorTypesEq` and use that instead.
-
Chia-hung Duan authored
With memory group, we always mark the free blocks from the same region. Therefore, we don't need to calculate the offset from base and determine the region index. Also improve the way we deal with the last block in the region so that the loop body is simpler. Reviewed By: cferris Differential Revision: https://reviews.llvm.org/D143303
-
Peiming Liu authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D145518
-
David Green authored
There is a fold to create LD1DUPpost from dup(load) that can be postinc. If the dup is used by a "by element" operation such as fmul or fma then it can be slightly better to fold the dup into the fmul instead, which produces slightly fast code. ld1r { v1.4s }, [x0], #4 fmul v0.4s, v1.4s, v0.4s vs ldr s1, [x0], #4 fmul v0.4s, v0.4s, v1.s[0] This could also be done with integer operations such as smull/umull too, so long as the load/dup gets correctly combined into the mul operation. Currently this just operates on foating point types. Differential Revision: https://reviews.llvm.org/D145184 -
Kazu Hirata authored
This patch freezes potentially poisonous conditions in conditional branches so that we do not "move up" conditional branches "br i1 poison". Differential Revision: https://reviews.llvm.org/D145008
-
Aaron Ballman authored
The proposal is about the behavior of the _Float16, _Float32, and _Float64 types and whether they undergo default argument promotions (they don't). Clang doesn't yet support TS 18661 or the parts that made it into C2x, so we don't implement this paper.
-