llvm/lib/CodeGen/GlobalISel
James Y Knight 3125e35140 Add support for llvm.is.constant intrinsic (PR4898)
This adds the llvm-side support for post-inlining evaluation of the
__builtin_constant_p GCC intrinsic.

Also fixed SCCPSolver::visitCallSite to not blow up when seeing a call
to a function where canConstantFoldTo returns true, and one of the
arguments is a struct.

Updated from patch initially by Janusz Sobczak.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@346322 91177308-0d34-0410-b5e6-96231b3b80d8
2018-11-07 15:24:12 +00:00
..
CallLowering.cpp [GISel]: Remove an incorrect assert in CallLowering 2018-09-28 15:08:49 +00:00
CMakeLists.txt
Combiner.cpp Re-commit: [globalisel] Add a combiner helpers for extending loads and use them in a pre-legalize combiner for AArch64 2018-10-03 02:12:17 +00:00
CombinerHelper.cpp [globalisel][combine] When placing truncates, handle the case when the BB is empty 2018-10-04 23:47:37 +00:00
GlobalISel.cpp
InstructionSelect.cpp
InstructionSelector.cpp ADT/STLExtras: Introduce llvm::empty; NFC 2018-10-31 00:23:23 +00:00
IRTranslator.cpp Add support for llvm.is.constant intrinsic (PR4898) 2018-11-07 15:24:12 +00:00
LegalityPredicates.cpp [GISel] LegalizerInfo: Rename MemDesc::Size to SizeInBits to make the value clearer 2018-10-25 17:37:07 +00:00
LegalizeMutations.cpp
Legalizer.cpp
LegalizerHelper.cpp [GlobalISel] LegalizerHelper: Fix the incorrect alignment when splitting loads/stores in narrowScalar 2018-10-25 17:52:19 +00:00
LegalizerInfo.cpp ADT/STLExtras: Introduce llvm::empty; NFC 2018-10-31 00:23:23 +00:00
LLVMBuild.txt
Localizer.cpp
MachineIRBuilder.cpp
RegBankSelect.cpp ADT/STLExtras: Introduce llvm::empty; NFC 2018-10-31 00:23:23 +00:00
RegisterBank.cpp
RegisterBankInfo.cpp ADT/STLExtras: Introduce llvm::empty; NFC 2018-10-31 00:23:23 +00:00
Utils.cpp [GISel]: Allow PHIs to be DCEd 2018-10-19 20:11:52 +00:00