1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
llvm-mirror/lib
Sidharth Baveja c84735516f [Loop Simplify] Resolve an issue where metadata is not applied to a loop latch.
Summary:
This patch resolves an issue where the metadata of a loop is not added to the
new loop latch, and not removed from the old loop latch. This issue occurs in
the SplitBlockPredecessors function, which  adds a new block in a loop, and
in the case that the block passed into this function is the header of the loop,
the loop can be modified such that the latch of the loop is replaced.
This patch applies to the Loop Simplify pass since it ensures that each loop
has exit blocks which only have predecessors that are inside of the loop. In
the case that this is not true, the pass will create a new exit block for the
loop. This guarantees that the loop preheader/header will dominate the exit blocks.

Author: sidbav (Sidharth Baveja)

Reviewers: asbirlea (Alina Sbirlea), chandlerc (Chandler Carruth), Whitney (Whitney Tsang), bmahjour (Bardia Mahjour)

Reviewed By:  asbirlea (Alina Sbirlea)

Subscribers: hiraditya (Aditya Kumar), llvm-commits

Tag: LLVM

Differential Revision: https://reviews.llvm.org/D83869
2020-07-17 14:02:14 +00:00
..
Analysis Make helpers static. NFC. 2020-07-17 13:49:11 +02:00
AsmParser Restore "[WPD/LowerTypeTests] Delay lowering/removal of type tests until after ICP" 2020-07-14 12:16:57 -07:00
BinaryFormat AMDGPU: Remove .value_type from kernel metadata 2020-07-10 18:16:31 -04:00
Bitcode Temporarily revert "[NFC] Separate bitcode reading for FUNC_CODE_INST_CMPXCHG(_OLD)" 2020-07-10 15:21:00 -07:00
Bitstream
CodeGen [HWLoops] Stop converting to a while loop when it would be unsafe to 2020-07-17 11:47:08 +01:00
DebugInfo [DebugInfo] Fix a possible crash when reading a malformed .debug_*lists section. 2020-07-14 16:35:17 +07:00
Demangle Give microsoftDemangle() an outparam for how many input bytes were consumed. 2020-05-20 16:17:31 -04:00
DWARFLinker [Clang] Restore replace_path_prefix instead of startswith 2020-05-13 13:49:14 -04:00
ExecutionEngine Make helpers static. NFC. 2020-07-17 13:49:11 +02:00
Extensions
Frontend [OpenMP][IRBuilder] Support nested parallel regions 2020-07-14 22:39:06 -05:00
Fuzzer
FuzzMutate [NewPM][LSR] Rename strength-reduce -> loop-reduce 2020-07-02 11:15:29 -07:00
IR Temporarily Revert "[AssumeBundles] Use operand bundles to encode alignment assumptions" 2020-07-16 11:54:04 -07:00
IRReader Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
LineEditor
Linker [SVE] Eliminate calls to default-false VectorType::get() from Linker 2020-05-29 17:43:15 -07:00
LTO Remove GlobalValue::getAlignment(). 2020-06-23 19:13:42 -07:00
MC [ms] [llvm-ml] Remove unused function 2020-07-17 09:06:37 -04:00
MCA [MCA][InstrBuilder] Correctly mark reserved resources in initializeUsedResources. 2020-05-10 19:25:54 +01:00
Object [WebAssembly] 64-bit (function) pointer fixes. 2020-07-16 14:10:22 -07:00
ObjectYAML [llvm-readobj] - Add proper testing for the SHT_MIPS_ABIFLAGS section. 2020-07-17 15:24:39 +03:00
Option
Passes [llvm] Moved InlineSizeEstimatorAnalysis test to .ll 2020-07-16 12:25:16 -07:00
ProfileData [PGO] Extend the value profile buckets for mem op sizes. 2020-07-15 10:26:15 -07:00
Remarks YAMLRemarkParser.cpp - remove duplicate RemarkParser.h include. NFC. 2020-06-08 13:59:05 +01:00
Support [RISCV] Add support for -mcpu option. 2020-07-16 11:46:22 -07:00
TableGen Fix ubsan error in tblgen with signed left shift 2020-06-16 11:15:09 -07:00
Target [AMDGPU] Avoid splitting FLAT offsets in unsafe ways 2020-07-17 11:44:10 +01:00
Testing
TextAPI [TextAPI/MachO] Fix style issues. NFC 2020-06-24 14:43:45 -07:00
ToolDrivers [COFF] Use Expected in COFFObjectFile creation 2020-05-08 14:22:28 -07:00
Transforms [Loop Simplify] Resolve an issue where metadata is not applied to a loop latch. 2020-07-17 14:02:14 +00:00
WindowsManifest
XRay [xray] Add llvm-xray extract support for 32 bit ARM 2020-05-28 18:41:11 -04:00
CMakeLists.txt
LLVMBuild.txt