MCTargetDesc/MandarinMCTargetDesc.cpp
// Code models. Some only make sense for 64-bit code.
//
// SunCC  Reloc   CodeModel  Constraints
// abs32  Static  Small      text+data+bss linked below 2^32 bytes
// abs44  Static  Medium     text+data+bss linked below 2^44 bytes
// abs64  Static  Large      text smaller than 2^31 bytes
// pic13  PIC_    Small      GOT < 2^13 bytes
// pic32  PIC_    Medium     GOT < 2^32 bytes
//
// All code models require that the text segment is smaller than 2GB.
Code models. Some only make sense for 64-bit code.

All code models require that the text segment is smaller than 2GB.
Code models . Some only make sense for 64 - bit code . All code models require that the text segment is smaller than 2GB .
static MCCodeGenInfo *createMandarinMCCodeGenInfo(StringRef TT, Reloc::Model RM,
                                               CodeModel::Model CM,
                                               CodeGenOpt::Level OL) {
  MCCodeGenInfo *X = new MCCodeGenInfo();
  if (CM == CodeModel::Default)
    CM = RM == Reloc::PIC_ ? CodeModel::Medium : CodeModel::Small;
  X->InitMCCodeGenInfo(RM, CM, OL);
  return X;
}
static MCCodeGenInfo * createMandarinMCCodeGenInfo ( StringRef TT , Reloc :: Model RM , CodeModel :: Model CM , CodeGenOpt :: Level OL ) { MCCodeGenInfo * X = new MCCodeGenInfo ( ) ; if ( CM == CodeModel :: Default ) CM = RM == Reloc :: PIC_ ? CodeModel :: Medium : CodeModel :: Small ; X -> InitMCCodeGenInfo ( RM , CM , OL ) ; return X ; }
Code models.
Code models .
// The default 32-bit code model is abs32/pic32.