FailedChanges

Summary

  1. [XRay] Add __xray_customeevent(...) as a clang-supported builtin Summary: We define the `__xray_customeevent` builtin that gets translated to IR calls to the correct intrinsic. The default implementation of this is a no-op function. The codegen side of this follows the following logic: - When `-fxray-instrument` is not provided in the driver, we elide all calls to `__xray_customevent`. - When `-fxray-instrument` is enabled and a function is marked as "never instrumented", we elide all calls to `__xray_customevent` in that function; if either marked as "always instrumented" or subject to threshold-based instrumentation, we emit a call to the `llvm.xray.customevent` intrinsic from LLVM for each `__xray_customevent` occurrence in the function. This change depends on D27503 (to land in LLVM first). Reviewers: echristo, rsmith Subscribers: mehdi_amini, pelikan, lrl, cfe-commits Differential Revision: https://reviews.llvm.org/D30018
  2. [Modules] Allow umbrella frameworks to define private submodules for subframeworks In r298391 we fixed the umbrella framework model to work when submodules named "Private" are used. This complements the work by allowing the umbrella framework model to work in general. rdar://problem/31790067
Revision 302492 by dberris:
[XRay] Add __xray_customeevent(...) as a clang-supported builtin

Summary:
We define the `__xray_customeevent` builtin that gets translated to
IR calls to the correct intrinsic. The default implementation of this is
a no-op function. The codegen side of this follows the following logic:

- When `-fxray-instrument` is not provided in the driver, we elide all
calls to `__xray_customevent`.
- When `-fxray-instrument` is enabled and a function is marked as "never
instrumented", we elide all calls to `__xray_customevent` in that
function; if either marked as "always instrumented" or subject to
threshold-based instrumentation, we emit a call to the
`llvm.xray.customevent` intrinsic from LLVM for each
`__xray_customevent` occurrence in the function.

This change depends on D27503 (to land in LLVM first).

Reviewers: echristo, rsmith

Subscribers: mehdi_amini, pelikan, lrl, cfe-commits

Differential Revision: https://reviews.llvm.org/D30018
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/Basic/Builtins.def (diff)llvm-revision.src/cfe/trunk/include/clang/Basic/Builtins.def
The file was modified/cfe/trunk/lib/CodeGen/CGBuiltin.cpp (diff)llvm-revision.src/cfe/trunk/lib/CodeGen/CGBuiltin.cpp
The file was added/cfe/trunk/test/CodeGen/xray-customevent.cppllvm-revision.src/cfe/trunk/test/CodeGen/xray-customevent.cpp
Revision 302491 by Bruno Lopes:
[Modules] Allow umbrella frameworks to define private submodules for subframeworks

In r298391 we fixed the umbrella framework model to work when submodules
named "Private" are used. This complements the work by allowing the
umbrella framework model to work in general.

rdar://problem/31790067
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Lex/ModuleMap.cpp (diff)llvm-revision.src/cfe/trunk/lib/Lex/ModuleMap.cpp
The file was added/cfe/trunk/test/Modules/Inputs/MainA.frameworkllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworksllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.frameworkllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/Headersllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/Headers
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/Headers/B.hllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/Headers/B.h
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/Headers/Sub.hllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/Headers/Sub.h
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/PrivateHeadersllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/PrivateHeaders
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/PrivateHeaders/BPriv.hllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/PrivateHeaders/BPriv.h
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/PrivateHeaders/SubPriv.hllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Frameworks/Sub.framework/PrivateHeaders/SubPriv.h
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Headersllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Headers
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Headers/A.hllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Headers/A.h
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Headers/Main.hllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Headers/Main.h
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Modulesllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Modules
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Modules/module.modulemapllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Modules/module.modulemap
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/Modules/module.private.modulemapllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/Modules/module.private.modulemap
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/PrivateHeadersllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/PrivateHeaders
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/PrivateHeaders/APriv.hllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/PrivateHeaders/APriv.h
The file was added/cfe/trunk/test/Modules/Inputs/MainA.framework/PrivateHeaders/MainPriv.hllvm-revision.src/cfe/trunk/test/Modules/Inputs/MainA.framework/PrivateHeaders/MainPriv.h
The file was modified/cfe/trunk/test/Modules/find-privateheaders.m (diff)llvm-revision.src/cfe/trunk/test/Modules/find-privateheaders.m