[SampleProfile] Use LazyCallGraph instead of CallGraph
The function order in some tests had to be changed because they relied on ordering of functions returned in an SCC which is consistent but unspecified.
[LSR] Fix wrapping bug in lsr-term-fold logic
The existing logic was unsound, in two ways.
First, due to wrapping on the trip count computation, it could compute a value which convert a loop which exiting on iteration 256, to one which exited at 255. (With i8 trip counts.)
Second, it allowed rewriting when the trip count implies wrapping around the alternate IV. As a trivial example, it allowed rewriting an i128 exit test in terms of an i64 IV. This is obviously wrong.
Note that the test change is fairly minimal - i.e. only the targeted test - but that's only because I precommitted a change which switched the test from 32 to 64 bit pointers. For 32 bit point architectures with 32 bit primary inductions, this transform is almost always unsound to perform.
Differential Revision: https://reviews.llvm.org/D146429
Changes to `SCFFuseProducerOfSliceResult` to also return the operations created during fusion.
This is follow up to https://reviews.llvm.org/D145133 that allows
propogating information about ops that are fused back to the caller.
Reviewed By: hanchung
Differential Revision: https://reviews.llvm.org/D146254
by Lang Hames
[JITLink][ELF][AArch64] Add support for ELF R_AARCH64_ABS32 relocation.
This relocation is commonly used in debug sections. Failure to handle it caused
the test failure in https://lab.llvm.org/buildbot/#/builders/197/builds/4272,
which forced the reversion, in f721fcb6ed0, of 57aeb305460 ("[JITLink][ELF]
Don't skip debug info sections by default"). This fix should allow us to
[mlir][Tensor] Make `TilingInterface` implementation only return handle to the created `pad` operation.
Pad tiling implementation only needs to return the tiled pad
operation. The rest of the generated code is related to handling
Reviewed By: hanchung
Differential Revision: https://reviews.llvm.org/D146439
by Vitaly Buka
Add declaration for `__tsan_default_options` to tsan_interface.h
`__tsan_default_options` is part of the tsan interface so should be
exposed in tsan_interface.h.
Differential Revision: https://reviews.llvm.org/D146259
[libc][obvious] fix missing memory_check_utils
memmove and bcopy tests were missing a dependancy on memory_check_utils
in the bazel build, causing build failures.
Differential Revision: https://reviews.llvm.org/D146462
[libc][bazel] add targets for sprintf
The bazel build is currently overlay mode only, so the FILE functions
are still out of reach for it, but sprintf only uses strings. This adds
targets for sprintf, snprintf, and all the interal printf pieces, as
well as tests.
Reviewed By: sivachandra, lntue
Differential Revision: https://reviews.llvm.org/D146100
by Ian Anderson
[libunwind][Modules] Add unwind_arm_ehabi.h and unwind_itanium.h to the unwind module)
Add unwind_arm_ehabi.h and unwind_itanium.h to the unwind module and use angle includes to include them.
Reviewed By: ldionne, #libunwind
Differential Revision: https://reviews.llvm.org/D144323
Fix a problem with "watchpoint triggers before" watchpoint handling.
We need to step the watchpoint instruction in these cases, but the
when we queued the ThreadPlanStepOverWatchpoint to do this, we didn't
make it a Controlling plan. So if you are stepping, this plan returns as
though it were a utility plan, and the stepping plan keeps going.
This only partially fixes the problem on Darwin; there's another bug
with reporting a watchpoint when we're instruction single stepping over
an instruction that triggers a watchpoint. The kernel reports the
"single step completed" but not the watchpoint hit. So this commit
also refactors the test into a part that works (at least on Darwin) and
a part that still fails.
We may have to adjust the test result expectations for other systems after
Differential Revision: https://reviews.llvm.org/D146337