hanchenye-llvm-project/llvm/lib
Yonghong Song 60fed1fef0 bpf: New optimization pass for eliminating unnecessary i32 promotions
This pass performs peephole optimizations to cleanup ugly code sequences at
MachineInstruction layer.

Currently, the only optimization in this pass is to eliminate type
promotion
sequences for zero extending 32-bit subregisters to 64-bit registers.

If the compiler could prove the zero extended source come from 32-bit
subregistere then it is safe to erase those promotion sequece, because the
upper half of the underlying 64-bit registers were zeroed implicitly
already.

Signed-off-by: Jiong Wang <jiong.wang@netronome.com>
Reviewed-by: Yonghong Song <yhs@fb.com>
llvm-svn: 325991
2018-02-23 23:49:32 +00:00
..
Analysis [MemorySSA] Fix a cache invalidation bug with removed accesses 2018-02-23 23:07:18 +00:00
AsmParser [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
BinaryFormat Add DWARF for discriminated unions 2018-02-06 23:45:59 +00:00
Bitcode [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
CodeGen [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
DebugInfo [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
Demangle Silence a bunch of implicit fallthrough warnings 2017-12-19 22:05:25 +00:00
ExecutionEngine [ORC] Switch to shared_ptr ownership for SymbolSources in VSOs. 2018-02-21 21:55:57 +00:00
FuzzMutate [llvm-opt-fuzzer] Add another pack of passes for continuous fuzzing 2018-02-19 11:57:07 +00:00
Fuzzer [libFuzzer] Delete llvm/lib/Fuzzer 2017-10-16 20:48:19 +00:00
IR [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
IRReader LLParser: add an argument for overriding data layout and do not check alloca addr space 2018-01-30 22:32:39 +00:00
LTO [ThinLTO] Always create linked objects file for --thinlto-index-only= 2018-02-22 19:06:15 +00:00
LineEditor
Linker Revert "[IRMover] Implement name based structure type mapping" 2018-02-21 20:12:18 +00:00
MC [DebugInfo] Support DWARF v5 source code embedding extension 2018-02-23 23:01:06 +00:00
Object [WebAssembly] Add first claass symbol table to wasm objects 2018-02-23 05:08:34 +00:00
ObjectYAML [WebAssembly] Add first claass symbol table to wasm objects 2018-02-23 05:08:34 +00:00
Option [Option] For typo '-foo', suggest '--foo' 2018-01-09 19:38:04 +00:00
Passes Another try to commit 323321 (aggressive instruction combine). 2018-01-25 12:06:32 +00:00
ProfileData [SampleProf] NFC. Expose reusable functionality in SampleProfile. 2018-02-22 06:42:57 +00:00
Support llvm-config: Add advapi32 to --system-libs on Windows (PR36372) 2018-02-23 12:20:26 +00:00
TableGen Revert "TableGen: Fix typeIsConvertibleTo for record types" 2018-02-23 11:31:49 +00:00
Target bpf: New optimization pass for eliminating unnecessary i32 promotions 2018-02-23 23:49:32 +00:00
Testing Force #define GTEST_LANG_CXX11. 2017-10-27 21:12:28 +00:00
ToolDrivers [COFF] Keep the underscore on exported decorated stdcall functions in MSVC mode 2018-01-20 11:44:32 +00:00
Transforms [InstCombine] simplify code for fabs(X) * fabs(X) -> X * X; NFC 2018-02-23 22:38:10 +00:00
WindowsManifest Fix bug 34608 by moving private header out of public header. 2017-09-14 23:01:13 +00:00
XRay [XRay] clarify error messages when parsing broken traces 2018-01-30 13:41:34 +00:00
CMakeLists.txt
LLVMBuild.txt