[FaultMaps] Let the frontend pre-select implicit null check candidates.
authorSanjoy Das <sanjoy@playingwithpointers.com>
Tue, 30 Jun 2015 21:22:32 +0000 (21:22 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Tue, 30 Jun 2015 21:22:32 +0000 (21:22 +0000)
commite1e95c11b8f07686651369b25522557e5ebb6931
treee5269b31df827c39bb5edf71e7820c4bf01fc478
parent8cdbab9dd653560218f872244c23b7cab2fa6451
[FaultMaps] Let the frontend pre-select implicit null check candidates.

Summary:
This change introduces a !make.implicit metadata that allows the
frontend to pre-select the set of explicit null checks that will be
considered for transformation into implicit null checks.

The reason for not using profiling data instead of !make.implicit is
explained in the change to `FaultMaps.rst`.

Reviewers: atrick, reames, pgavlin, JosephTremoulet

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D10824

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241116 91177308-0d34-0410-b5e6-96231b3b80d8
docs/FaultMaps.rst
lib/CodeGen/ImplicitNullChecks.cpp
test/CodeGen/X86/implicit-null-check-negative.ll
test/CodeGen/X86/implicit-null-check.ll