llvm/include/llvm-c
Joerg Sonnenberger 732f95ff9a Reapply r374743 with a fix for the ocaml binding
Add a pass to lower is.constant and objectsize intrinsics

This pass lowers is.constant and objectsize intrinsics not simplified by
earlier constant folding, i.e. if the object given is not constant or if
not using the optimized pass chain. The result is recursively simplified
and constant conditionals are pruned, so that dead blocks are removed
even for -O0. This allows inline asm blocks with operand constraints to
work all the time.

The new pass replaces the existing lowering in the codegen-prepare pass
and fallbacks in SDAG/GlobalISEL and FastISel. The latter now assert
on the intrinsics.

Differential Revision: https://reviews.llvm.org/D65280


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@374784 91177308-0d34-0410-b5e6-96231b3b80d8
2019-10-14 16:15:14 +00:00
..
Transforms Reapply r374743 with a fix for the ocaml binding 2019-10-14 16:15:14 +00:00
Analysis.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
BitReader.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
BitWriter.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Comdat.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Core.h [llvm-c] Add UnaryOperator to LLVM_FOR_EACH_VALUE_SUBCLASS macro 2019-10-07 21:33:39 +00:00
DataTypes.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DebugInfo.h Fix Wdocumentation unknown parameter warning. NFCI. 2019-10-09 14:26:09 +00:00
Disassembler.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DisassemblerTypes.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Error.h [llvm-c] Make LLVMGetStringErrorTypeId a proper prototype 2019-05-06 06:42:06 +00:00
ErrorHandling.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ExecutionEngine.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Initialization.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IRReader.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Linker.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LinkTimeOptimizer.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
lto.h [LTO][Legacy] Add new C inferface to query libcall functions 2019-09-16 18:49:54 +00:00
module.modulemap [modules] The LLVM C API does not require C++! 2014-06-12 22:09:39 +00:00
Object.h [LLVM-C] Add Accessor for Mach-O Universal Binary Slices 2019-05-25 16:47:27 +00:00
OrcBindings.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Remarks.h [Remarks] Add parser for bitstream remarks 2019-09-09 17:43:50 +00:00
Support.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Target.h Remove MSVC compat hack since the inline keyword was added in 2015 2019-03-19 21:40:59 +00:00
TargetMachine.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Types.h [LLVM-C] Begin to Expose A More General Binary Interface 2019-04-05 21:36:50 +00:00