diff --git a/tools/llvmc/plugins/Base/Base.td.in b/tools/llvmc/plugins/Base/Base.td.in index 0f481e270d7..4acb1bd9217 100644 --- a/tools/llvmc/plugins/Base/Base.td.in +++ b/tools/llvmc/plugins/Base/Base.td.in @@ -111,6 +111,7 @@ class llvm_gcc_based : Tool< (and (switch_on "emit-llvm"), (switch_on "c")), (stop_compilation), (switch_on "fsyntax-only"), (stop_compilation), (not_empty "include"), (forward "include"), + (not_empty "save-temps"), (append_cmd "-save-temps"), (not_empty "I"), (forward "I"), (not_empty "F"), (forward "F"), (not_empty "D"), (forward "D"), diff --git a/utils/TableGen/LLVMCConfigurationEmitter.cpp b/utils/TableGen/LLVMCConfigurationEmitter.cpp index 546988a10e4..8b55b81eae4 100644 --- a/utils/TableGen/LLVMCConfigurationEmitter.cpp +++ b/utils/TableGen/LLVMCConfigurationEmitter.cpp @@ -1155,6 +1155,9 @@ public: if (OptName == "o") { O << Neg << "OutputFilename.empty()"; } + else if (OptName == "save-temps") { + O << Neg << "(SaveTemps == SaveTempsEnum::Unset)"; + } else { const OptionDescription& OptDesc = OptDescs_.FindListOrParameter(OptName); O << Neg << OptDesc.GenVariableName() << ".empty()";