forked from OSchip/llvm-project
[modules] Separate intrinsic_gen dependent headers from module LLVM_IR.
Some headers in IR depend on tablegen generated code. Modules builds triggered generation of the LLVM_IR module (including headers dependant on intrinsic_gen), imposing a unnecessary build dependency. Reviewed by Richard Smith. llvm-svn: 274006
This commit is contained in:
parent
444746b483
commit
92de57e7b2
|
@ -114,6 +114,43 @@ module LLVM_Pass {
|
|||
module InitializePasses { header "InitializePasses.h" export * }
|
||||
}
|
||||
|
||||
module LLVM_intrinsic_gen {
|
||||
requires cplusplus
|
||||
|
||||
// Delay building the modules containing dependencies to Attributes.h and
|
||||
// Intrinsics.h because they need to be generated by tablegen first.
|
||||
|
||||
// Attributes.h
|
||||
module IR_Argument { header "IR/Argument.h" export * }
|
||||
module IR_Attributes { header "IR/Attributes.h" export * }
|
||||
module IR_CallSite { header "IR/CallSite.h" export * }
|
||||
module IR_ConstantFolder { header "IR/ConstantFolder.h" export * }
|
||||
module IR_NoFolder { header "IR/NoFolder.h" export * }
|
||||
module IR_Module { header "IR/Module.h" export * }
|
||||
module IR_ModuleSummaryIndex { header "IR/ModuleSummaryIndex.h" export * }
|
||||
module IR_Function { header "IR/Function.h" export * }
|
||||
module IR_InstrTypes { header "IR/InstrTypes.h" export * }
|
||||
module IR_Instructions { header "IR/Instructions.h" export * }
|
||||
|
||||
|
||||
// Intrinsics.h
|
||||
module IR_CFG { header "IR/CFG.h" export * }
|
||||
module IR_ConstantRange { header "IR/ConstantRange.h" export * }
|
||||
module IR_Dominators { header "IR/Dominators.h" export * }
|
||||
module IR_IRBuilder { header "IR/IRBuilder.h" export * }
|
||||
module IR_PassManager { header "IR/PassManager.h" export * }
|
||||
module IR_PredIteratorCache { header "IR/PredIteratorCache.h" export * }
|
||||
module IR_Verifier { header "IR/Verifier.h" export * }
|
||||
module IR_InstIterator { header "IR/InstIterator.h" export * }
|
||||
module IR_InstVisitor { header "IR/InstVisitor.h" export * }
|
||||
module IR_Intrinsics { header "IR/Intrinsics.h" export * }
|
||||
module IR_IntrinsicInst { header "IR/IntrinsicInst.h" export * }
|
||||
module IR_PatternMatch { header "IR/PatternMatch.h" export * }
|
||||
module IR_Statepoint { header "IR/Statepoint.h" export * }
|
||||
|
||||
export *
|
||||
}
|
||||
|
||||
module LLVM_IR {
|
||||
requires cplusplus
|
||||
|
||||
|
|
Loading…
Reference in New Issue