lib/IRGen/MetadataLayout.cpp
llvm::Value *irgen::emitClassFieldOffset(IRGenFunction &IGF,
                                         ClassDecl *theClass,
                                         VarDecl *field,
                                         llvm::Value *metadata) {
  auto slot = emitAddressOfClassFieldOffset(IGF, metadata, theClass, field);
  return IGF.emitInvariantLoad(slot);
}
/// Given a reference to class metadata of the given type,
/// compute the field offset for a stored property.
/// The type must have dependent generic layout.
Given a reference to class metadata of the given type,
compute the field offset for a stored property.
The type must have dependent generic layout.
Given a reference to class metadata of the given type compute the field offset for a stored property . The type must have dependent generic layout .
llvm::Value *irgen::emitClassFieldOffset(IRGenFunction &IGF,
                                         ClassDecl *theClass,
                                         VarDecl *field,
                                         llvm::Value *metadata) {
  auto slot = emitAddressOfClassFieldOffset(IGF, metadata, theClass, field);
  return IGF.emitInvariantLoad(slot);
}
llvm :: Value * irgen :: emitClassFieldOffset ( IRGenFunction & IGF , ClassDecl * theClass , VarDecl * field , llvm :: Value * metadata ) { auto slot = emitAddressOfClassFieldOffset ( IGF , metadata , theClass , field ) ; return IGF . emitInvariantLoad ( slot ) ; }
Given a reference to class metadata of the given type,
compute the field offset for a stored property.
Given a reference to class metadata of the given type compute the field offset for a stored property .