diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2009-01-12 07:40:25 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2009-01-12 07:40:25 +0000 |
| commit | 17bbcfd5a0c9c615062288ee5d6cfc427fe0cec7 (patch) | |
| tree | c005aa12bede3cc98c261dbab130bc7213495040 /clang/tools/ccc/ccclib/Tools.py | |
| parent | c11d8d4a09222d62a154d31c935918c9e4a3ffc3 (diff) | |
| download | bcm5719-llvm-17bbcfd5a0c9c615062288ee5d6cfc427fe0cec7.tar.gz bcm5719-llvm-17bbcfd5a0c9c615062288ee5d6cfc427fe0cec7.zip | |
ccc: Implement the rest of Darwin/Assembler argument translation.
llvm-svn: 62081
Diffstat (limited to 'clang/tools/ccc/ccclib/Tools.py')
| -rw-r--r-- | clang/tools/ccc/ccclib/Tools.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/tools/ccc/ccclib/Tools.py b/clang/tools/ccc/ccclib/Tools.py index 7f3b0cf6300..a9209821488 100644 --- a/clang/tools/ccc/ccclib/Tools.py +++ b/clang/tools/ccc/ccclib/Tools.py @@ -112,14 +112,32 @@ class DarwinAssembleTool(Tool): input = inputs[0] cmd_args = [] + + if arglist.getLastArg(arglist.parser.gOption): + cmd_args.append('--gstabs') + + # Derived from asm spec. if arch: cmd_args.extend(arglist.render(arch)) cmd_args.append('-force_cpusubtype_ALL') cmd_args.extend(arglist.render(output)) + if (arglist.getLastArg(arglist.parser.m_kernelOption) or + arglist.getLastArg(arglist.parser.staticOption) or + arglist.getLastArg(arglist.parser.f_appleKextOption)): + if not arglist.getLastArg(arglist.parser.ZdynamicOption): + cmd_args.append('-static') + + for arg in arglist.getArgs2(arglist.parser.WaOption, + arglist.parser.XassemblerOption): + cmd_args.extend(arglist.getValues(arg)) + if isinstance(input.source, Jobs.PipedJob): cmd_args.append('-') else: cmd_args.extend(arglist.renderAsInput(input.source)) + + # asm_final spec is empty. + jobs.addJob(Jobs.Command('as', cmd_args)) class GCC_AssembleTool(GCC_Common_Tool): |

