blob: d1dab73cb65acc11e5dc1208b57f00b2efd502e4 [file] [log] [blame]
Reid Spencerbd70c0b2007-02-02 15:50:58 +00001#!/bin/sh
2##===- tools/gccas.sh ------------------------------------------*- bash -*-===##
3#
4# The LLVM Compiler Infrastructure
5#
6# This file was developed by Reid Spencer and is distributed under the
7# University of Illinois Open Source License. See LICENSE.TXT for details.
8#
9##===----------------------------------------------------------------------===##
10#
11# Synopsis: This shell script is a replacement for the old "gccas" tool that
12# existed in LLVM versions before 2.0. The functionality of gccas has
13# now been moved to opt and llvm-as. This shell script provides
14# backwards compatibility so build environments invoking gccas can
15# still get the net effect of llvm-as/opt by running gccas.
16#
17# Syntax: gccas OPTIONS... [asm file]
18#
19##===----------------------------------------------------------------------===##
20#
21TOOLDIR=@TOOLDIR@
22OPTOPTS="-std-compile-opts -f"
23ASOPTS=""
24lastwasdasho=0
25for option in "$@" ; do
26 case "$option" in
27 -disable-opt)
28 OPTOPTS="$OPTOPTS $option"
29 ;;
30 -disable-inlining)
31 OPTOPTS="$OPTOPTS $option"
32 ;;
33 -verify)
34 OPTOPTS="$OPTOPTS -verify-each"
35 ;;
36 -strip-debug)
37 OPTOPTS="$OPTOPTS $option"
38 ;;
39 -o)
40 OPTOPTS="$OPTOPTS -o"
41 lastwasdasho=1
42 ;;
43 -disable-compression)
44 # ignore
45 ;;
46 -traditional-format)
47 # ignore
48 ;;
49 -*)
50 echo "gccas: Unrecognized option '$option'"
51 exit 1
52 ;;
53 *)
54 if test $lastwasdasho -eq 1 ; then
55 OPTOPTS="$OPTOPTS $option"
56 lastwasdasho=0
57 else
58 ASOPTS="$ASOPTS $option"
59 fi
60 ;;
61 esac
62done
63${TOOLDIR}/llvm-as $ASOPTS -o - | ${TOOLDIR}/opt $OPTOPTS