Changes in directory llvm/lib/Target:
TargetMachine.cpp updated: 1.48 -> 1.49 --- Log message: Added option -code-model to set code model (only used in 64-bit) mode. Valid values include small, kernel, medium, large, and default. --- Diffs of the changes: (+30 -0) TargetMachine.cpp | 30 ++++++++++++++++++++++++++++++ 1 files changed, 30 insertions(+) Index: llvm/lib/Target/TargetMachine.cpp diff -u llvm/lib/Target/TargetMachine.cpp:1.48 llvm/lib/Target/TargetMachine.cpp:1.49 --- llvm/lib/Target/TargetMachine.cpp:1.48 Wed May 24 14:05:21 2006 +++ llvm/lib/Target/TargetMachine.cpp Wed Jul 5 20:53:35 2006 @@ -28,6 +28,7 @@ bool UnsafeFPMath; bool FiniteOnlyFPMathOption; Reloc::Model RelocationModel; + CodeModel::Model CMModel; } namespace { cl::opt<bool, true> PrintCode("print-machineinstrs", @@ -70,6 +71,24 @@ clEnumValN(Reloc::DynamicNoPIC, "dynamic-no-pic", "Relocatable external references, non-relocatable code"), clEnumValEnd)); + cl::opt<llvm::CodeModel::Model, true> + DefCodeModel( + "code-model", + cl::desc("Choose relocation model"), + cl::location(CMModel), + cl::init(CodeModel::Default), + cl::values( + clEnumValN(CodeModel::Default, "default", + "Target default code model"), + clEnumValN(CodeModel::Small, "small", + "Small code model"), + clEnumValN(CodeModel::Kernel, "kernel", + "Kernel code model"), + clEnumValN(CodeModel::Medium, "medium", + "Medium code model"), + clEnumValN(CodeModel::Large, "large", + "Large code model"), + clEnumValEnd)); } //--------------------------------------------------------------------------- @@ -94,6 +113,17 @@ RelocationModel = Model; } +/// getCodeModel - Returns the code model. The choices are small, kernel, +/// medium, large, and target default. +CodeModel::Model TargetMachine::getCodeModel() { + return CMModel; +} + +/// setCodeModel - Sets the code model. +void TargetMachine::setCodeModel(CodeModel::Model Model) { + CMModel = Model; +} + namespace llvm { /// FiniteOnlyFPMath - This returns true when the -enable-finite-only-fp-math /// option is specified on the command line. If this returns false (default), _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits