diff options
Diffstat (limited to 'lib/compilers/rust.js')
-rw-r--r-- | lib/compilers/rust.js | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/compilers/rust.js b/lib/compilers/rust.js index b0e51635c..2bc4cee83 100644 --- a/lib/compilers/rust.js +++ b/lib/compilers/rust.js @@ -24,12 +24,15 @@ const BaseCompiler = require('../base-compiler'), _ = require('underscore'), + path = require('path'), argumentParsers = require("./argument-parsers"); class RustCompiler extends BaseCompiler { constructor(info, env) { super(info, env); this.compiler.supportsIntel = true; + this.compiler.supportsIrView = true; + this.compiler.irArg = ['--emit', 'llvm-ir']; } optionsForFilter(filters, outputFilename, userOptions) { @@ -47,6 +50,12 @@ class RustCompiler extends BaseCompiler { return options; } + // Override the IR file name method for rustc because the output file is different from clang. + getIrOutputFilename(inputFilename) { + return this.getOutputFilename(path.dirname(inputFilename), this.outputFilebase) + .replace('.s', '.ll'); + } + getArgumentParser() { return argumentParsers.Clang; } |