Commit fa0cfa5b by Jim Stichnoth

Subzero: Change the name llvm2ice to the more appropriate pnacl-sz.

Most of this is a mechanical change of 'llvm2ice' to 'pnacl-sz'. This is a convenient naming choice because both strings are the same length which minimizes the need for line length reformatting. Python variables needed to use pnacl_sz instead, and sometimes pnacl_sz_ . The IceConverter still uses LLVM2Ice naming, which is actually appropriate there since it actually converts LLVM IR into ICE. I will rename tests_lit/llvm2ice_tests/ in a separate CL, otherwise this CL will look misleadingly massive and no one will review it. BUG= none R=kschimpf@google.com Review URL: https://codereview.chromium.org/956123002
parent 729dbd01
...@@ -8,6 +8,6 @@ ...@@ -8,6 +8,6 @@
\#* \#*
# Ignore specific patterns at the top-level directory # Ignore specific patterns at the top-level directory
/llvm2ice /pnacl-sz
/build/ /build/
/crosstest/Output/ /crosstest/Output/
...@@ -127,7 +127,7 @@ SRCS = \ ...@@ -127,7 +127,7 @@ SRCS = \
IceTimerTree.cpp \ IceTimerTree.cpp \
IceTranslator.cpp \ IceTranslator.cpp \
IceTypes.cpp \ IceTypes.cpp \
llvm2ice.cpp \ main.cpp \
PNaClTranslator.cpp PNaClTranslator.cpp
ifndef MINIMAL ifndef MINIMAL
...@@ -143,23 +143,23 @@ UNITTEST_SRCS = \ ...@@ -143,23 +143,23 @@ UNITTEST_SRCS = \
IceParseInstsTest.cpp IceParseInstsTest.cpp
UNITTEST_OBJS = $(patsubst %.cpp, $(OBJDIR)/unittest/%.o, $(UNITTEST_SRCS)) UNITTEST_OBJS = $(patsubst %.cpp, $(OBJDIR)/unittest/%.o, $(UNITTEST_SRCS))
UNITTEST_LIB_OBJS = $(filter-out $(OBJDIR)/llvm2ice.o,$(OBJS)) UNITTEST_LIB_OBJS = $(filter-out $(OBJDIR)/main.o,$(OBJS))
# Keep all the first target so it's the default. # Keep all the first target so it's the default.
all: $(OBJDIR)/llvm2ice make_symlink runtime all: $(OBJDIR)/pnacl-sz make_symlink runtime
# Creates symbolic link so that testing is easier. Also runs # Creates symbolic link so that testing is easier. Also runs
# llvm2ice to verify that the defines flags have valid values, # pnacl-sz to verify that the defines flags have valid values,
# as well as describe the corresponding build attributes. # as well as describe the corresponding build attributes.
make_symlink: $(OBJDIR)/llvm2ice make_symlink: $(OBJDIR)/pnacl-sz
rm -rf llvm2ice rm -rf pnacl-sz
ln -s $(OBJDIR)/llvm2ice ln -s $(OBJDIR)/pnacl-sz
@echo "Build Attributes:" @echo "Build Attributes:"
@$(OBJDIR)/llvm2ice --build-atts @$(OBJDIR)/pnacl-sz --build-atts
.PHONY: all make_symlink runtime bloat .PHONY: all make_symlink runtime bloat
$(OBJDIR)/llvm2ice: $(OBJS) $(OBJDIR)/pnacl-sz: $(OBJS)
$(CXX) $(LDFLAGS) -o $@ $^ $(LLVM_LDFLAGS) \ $(CXX) $(LDFLAGS) -o $@ $^ $(LLVM_LDFLAGS) \
-Wl,-rpath=$(abspath $(LIBCXX_INSTALL_PATH)/lib) -Wl,-rpath=$(abspath $(LIBCXX_INSTALL_PATH)/lib)
...@@ -202,7 +202,7 @@ runtime.is.built: $(RT_SRC) ...@@ -202,7 +202,7 @@ runtime.is.built: $(RT_SRC)
@echo ================ Building Subzero runtime ================ @echo ================ Building Subzero runtime ================
./pydir/build-runtime.py -v ./pydir/build-runtime.py -v
check-lit: $(OBJDIR)/llvm2ice make_symlink check-lit: $(OBJDIR)/pnacl-sz make_symlink
LLVM_BIN_PATH=$(LLVM_BIN_PATH) \ LLVM_BIN_PATH=$(LLVM_BIN_PATH) \
BINUTILS_BIN_PATH=$(BINUTILS_BIN_PATH) \ BINUTILS_BIN_PATH=$(BINUTILS_BIN_PATH) \
$(LLVM_SRC_PATH)/utils/lit/lit.py -sv tests_lit $(LLVM_SRC_PATH)/utils/lit/lit.py -sv tests_lit
...@@ -232,12 +232,12 @@ format-diff: ...@@ -232,12 +232,12 @@ format-diff:
-p1 -style=LLVM -i -p1 -style=LLVM -i
bloat: make_symlink bloat: make_symlink
nm -C -S -l llvm2ice | \ nm -C -S -l pnacl-sz | \
bloat/bloat.py --nm-output=/dev/stdin syms > build/llvm2ice.bloat.json bloat/bloat.py --nm-output=/dev/stdin syms > build/pnacl-sz.bloat.json
@echo See Subzero size breakdown in bloat/llvm2ice.bloat.html @echo See Subzero size breakdown in bloat/pnacl-sz.bloat.html
clean: clean:
rm -rf llvm2ice *.o $(OBJDIR) build/llvm2ice.bloat.json rm -rf pnacl-sz *.o $(OBJDIR) build/pnacl-sz.bloat.json
clean-all: clean clean-all: clean
rm -rf build/ rm -rf build/
...@@ -32,23 +32,23 @@ inside a debugger. ``NOASSERT=1`` disables assertions and is the preferred ...@@ -32,23 +32,23 @@ inside a debugger. ``NOASSERT=1`` disables assertions and is the preferred
configuration for performance testing the translator. ``MINIMAL=1`` attempts to configuration for performance testing the translator. ``MINIMAL=1`` attempts to
minimize the size of the translator by compiling out everything unnecessary. minimize the size of the translator by compiling out everything unnecessary.
The result of the ``make`` command is the target ``llvm2ice`` in the current The result of the ``make`` command is the target ``pnacl-sz`` in the current
directory. directory.
``llvm2ice`` ``pnacl-sz``
------------ ------------
The ``llvm2ice`` program parses a pexe or an LLVM bitcode file and translates it The ``pnacl-sz`` program parses a pexe or an LLVM bitcode file and translates it
into ICE (Subzero's intermediate representation). It then invokes the ICE into ICE (Subzero's intermediate representation). It then invokes the ICE
translate method to lower it to target-specific machine code, optionally dumping translate method to lower it to target-specific machine code, optionally dumping
the intermediate representation at various stages of the translation. the intermediate representation at various stages of the translation.
The program can be run as follows:: The program can be run as follows::
../llvm2ice ./path/to/<file>.pexe ../pnacl-sz ./path/to/<file>.pexe
../llvm2ice ./tests_lit/llvm2ice_tests/<file>.ll ../pnacl-sz ./tests_lit/pnacl-sz_tests/<file>.ll
At this time, ``llvm2ice`` accepts a number of arguments, including the At this time, ``pnacl-sz`` accepts a number of arguments, including the
following: following:
``-help`` -- Show available arguments and possible values. (Note: this ``-help`` -- Show available arguments and possible values. (Note: this
...@@ -105,12 +105,12 @@ A convenient way to run both the lit tests and the cross tests is:: ...@@ -105,12 +105,12 @@ A convenient way to run both the lit tests and the cross tests is::
make -f Makefile.standalone check make -f Makefile.standalone check
Assembling ``llvm2ice`` output as needed Assembling ``pnacl-sz`` output as needed
---------------------------------------- ----------------------------------------
``llvm2ice`` can now produce a native ELF binary using ``-filetype=obj``. ``pnacl-sz`` can now produce a native ELF binary using ``-filetype=obj``.
``llvm2ice`` can also produce textual assembly code in a structure suitable for ``pnacl-sz`` can also produce textual assembly code in a structure suitable for
input to ``llvm-mc``, using ``-filetype=asm`` or ``-filetype=iasm``. An object input to ``llvm-mc``, using ``-filetype=asm`` or ``-filetype=iasm``. An object
file can then be produced using the command:: file can then be produced using the command::
......
...@@ -32,4 +32,4 @@ styling and transitions) rather than a big canvas/svg/plugin. ...@@ -32,4 +32,4 @@ styling and transitions) rather than a big canvas/svg/plugin.
Local Modifications: Local Modifications:
webtreemap.{js,css} are used with no modifications. demo/demo.html webtreemap.{js,css} are used with no modifications. demo/demo.html
was used as the basis for llvm2ice.bloat.html. was used as the basis for pnacl-sz.bloat.html.
<!DOCTYPE html> <!DOCTYPE html>
<head> <head>
<title>Subzero size breakdown</title> <title>Subzero size breakdown</title>
<script src='../build/llvm2ice.bloat.json'></script> <script src='../build/pnacl-sz.bloat.json'></script>
<link rel='stylesheet' href='webtreemap.css'> <link rel='stylesheet' href='webtreemap.css'>
<style> <style>
body { body {
......
...@@ -102,7 +102,7 @@ if __name__ == '__main__': ...@@ -102,7 +102,7 @@ if __name__ == '__main__':
asm_sz = os.path.join(args.dir, base_sz + '.sz.s') asm_sz = os.path.join(args.dir, base_sz + '.sz.s')
obj_sz = os.path.join(args.dir, base_sz + '.sz.o') obj_sz = os.path.join(args.dir, base_sz + '.sz.o')
obj_llc = os.path.join(args.dir, base + '.llc.o') obj_llc = os.path.join(args.dir, base + '.llc.o')
shellcmd(['../llvm2ice', shellcmd(['../pnacl-sz',
'-O' + args.optlevel, '-O' + args.optlevel,
'-mattr=' + args.attr, '-mattr=' + args.attr,
'--target=' + args.target, '--target=' + args.target,
......
...@@ -11,7 +11,7 @@ import tempfile ...@@ -11,7 +11,7 @@ import tempfile
from utils import shellcmd from utils import shellcmd
def main(): def main():
"""Run the llvm2ice compiler on an llvm file. """Run the pnacl-sz compiler on an llvm file.
Takes an llvm input file, freezes it into a pexe file, converts Takes an llvm input file, freezes it into a pexe file, converts
it to a Subzero program, and finally compiles it. it to a Subzero program, and finally compiles it.
...@@ -38,8 +38,8 @@ def main(): ...@@ -38,8 +38,8 @@ def main():
'(without generating a pexe), then ' + '(without generating a pexe), then ' +
'convert to Subzero') 'convert to Subzero')
argparser.add_argument( argparser.add_argument(
'--llvm2ice', required=False, default='./llvm2ice', metavar='LLVM2ICE', '--pnacl-sz', required=False, default='./pnacl-sz', metavar='PNACL-SZ',
help="Subzero translator 'llvm2ice'") help="Subzero translator 'pnacl-sz'")
argparser.add_argument('--llvm-bin-path', required=False, argparser.add_argument('--llvm-bin-path', required=False,
default=None, metavar='LLVM_BIN_PATH', default=None, metavar='LLVM_BIN_PATH',
help='Path to LLVM executables ' + help='Path to LLVM executables ' +
...@@ -64,7 +64,7 @@ def main(): ...@@ -64,7 +64,7 @@ def main():
help='Trace command that generates ICE instructions') help='Trace command that generates ICE instructions')
argparser.add_argument('--args', '-a', nargs=argparse.REMAINDER, argparser.add_argument('--args', '-a', nargs=argparse.REMAINDER,
default=[], default=[],
help='Remaining arguments are passed to llvm2ice') help='Remaining arguments are passed to pnacl-sz')
args = argparser.parse_args() args = argparser.parse_args()
llvm_bin_path = args.llvm_bin_path llvm_bin_path = args.llvm_bin_path
...@@ -85,7 +85,7 @@ def main(): ...@@ -85,7 +85,7 @@ def main():
if not args.no_local_syms: if not args.no_local_syms:
cmd += ['--allow-local-symbol-tables'] cmd += ['--allow-local-symbol-tables']
cmd += ['|'] cmd += ['|']
cmd += [args.llvm2ice] cmd += [args.pnacl_sz]
if args.insts: if args.insts:
# If the tests are based on '-verbose inst' output, force # If the tests are based on '-verbose inst' output, force
# single-threaded translation because dump output does not get # single-threaded translation because dump output does not get
......
...@@ -121,7 +121,7 @@ def main(): ...@@ -121,7 +121,7 @@ def main():
entirely using Subzero, without using llc or linker tricks. entirely using Subzero, without using llc or linker tricks.
This script uses file modification timestamps to determine whether llc and This script uses file modification timestamps to determine whether llc and
Subzero re-translation are needed. It checks timestamps of llc, llvm2ice, Subzero re-translation are needed. It checks timestamps of llc, pnacl-sz,
and the pexe against the translated object files to determine the minimal and the pexe against the translated object files to determine the minimal
work necessary. The --force option suppresses those checks and work necessary. The --force option suppresses those checks and
re-translates everything. re-translates everything.
...@@ -169,8 +169,8 @@ def ProcessPexe(args, pexe, exe): ...@@ -169,8 +169,8 @@ def ProcessPexe(args, pexe, exe):
sym_sz_unescaped = pexe_base_unescaped + '.sym.sz.txt' sym_sz_unescaped = pexe_base_unescaped + '.sym.sz.txt'
whitelist_sz = pexe_base + '.wl.sz.txt' whitelist_sz = pexe_base + '.wl.sz.txt'
whitelist_sz_unescaped = pexe_base_unescaped + '.wl.sz.txt' whitelist_sz_unescaped = pexe_base_unescaped + '.wl.sz.txt'
llvm2ice = ( pnacl_sz = (
'{root}/toolchain_build/src/subzero/llvm2ice' '{root}/toolchain_build/src/subzero/pnacl-sz'
).format(root=nacl_root) ).format(root=nacl_root)
llcbin = 'llc' llcbin = 'llc'
gold = 'le32-nacl-ld.gold' gold = 'le32-nacl-ld.gold'
...@@ -206,9 +206,9 @@ def ProcessPexe(args, pexe, exe): ...@@ -206,9 +206,9 @@ def ProcessPexe(args, pexe, exe):
if (args.force or if (args.force or
NewerThanOrNotThere(pexe, obj_sz) or NewerThanOrNotThere(pexe, obj_sz) or
NewerThanOrNotThere(llvm2ice, obj_sz)): NewerThanOrNotThere(pnacl_sz, obj_sz)):
# Run llvm2ice regardless of hybrid mode. # Run pnacl-sz regardless of hybrid mode.
shellcmd([llvm2ice, shellcmd([pnacl_sz,
'-O' + opt_level, '-O' + opt_level,
'-bitcode-format=pnacl', '-bitcode-format=pnacl',
'-filetype=' + args.filetype, '-filetype=' + args.filetype,
......
...@@ -72,7 +72,7 @@ public: ...@@ -72,7 +72,7 @@ public:
virtual bool getSuppressMangling() const = 0; virtual bool getSuppressMangling() const = 0;
// Mangles name for cross tests, unless external and not defined locally // Mangles name for cross tests, unless external and not defined locally
// (so that relocations accross llvm2ice and pnacl-llc will work). // (so that relocations accross pnacl-sz and pnacl-llc will work).
virtual IceString mangleName(GlobalContext *Ctx) const { virtual IceString mangleName(GlobalContext *Ctx) const {
return getSuppressMangling() ? Name : Ctx->mangleName(Name); return getSuppressMangling() ? Name : Ctx->mangleName(Name);
} }
......
...@@ -29,7 +29,7 @@ namespace Ice { ...@@ -29,7 +29,7 @@ namespace Ice {
namespace { namespace {
// TODO(stichnot): Move this machinery into llvm2ice.cpp. // TODO(stichnot): Move this machinery into main.cpp.
namespace cl = llvm::cl; namespace cl = llvm::cl;
cl::opt<bool> DoNopInsertion("nop-insertion", cl::desc("Randomly insert NOPs"), cl::opt<bool> DoNopInsertion("nop-insertion", cl::desc("Randomly insert NOPs"),
cl::init(false)); cl::init(false));
......
SUBZERO_LEVEL := .. SUBZERO_LEVEL := ..
TOOLNAME := llvm2ice TOOLNAME := pnacl-sz
LINK_COMPONENTS := support LINK_COMPONENTS := support
# This tool has no plugins, optimize startup time. # This tool has no plugins, optimize startup time.
......
//===- subzero/src/llvm2ice.cpp - Driver for testing ----------------------===// //===- subzero/src/main.cpp - Driver for bitcode translation --------------===//
// //
// The Subzero Code Generator // The Subzero Code Generator
// //
...@@ -7,9 +7,11 @@ ...@@ -7,9 +7,11 @@
// //
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
// //
// This file defines a driver that uses LLVM capabilities to parse a // This file defines a driver for translating PNaCl bitcode into native code.
// bitcode file and build the LLVM IR, and then convert the LLVM basic // It can either directly parse the binary bitcode file, or use LLVM routines to
// blocks, instructions, and operands into their Subzero equivalents. // parse a textual bitcode file into LLVM IR and then convert LLVM IR into ICE.
// In either case, the high-level ICE is then compiled down to native code, as
// either an ELF object file or a textual asm file.
// //
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
......
...@@ -69,28 +69,28 @@ llvmbinpath = os.path.abspath(os.environ.get('LLVM_BIN_PATH')) ...@@ -69,28 +69,28 @@ llvmbinpath = os.path.abspath(os.environ.get('LLVM_BIN_PATH'))
# Find binutils tools. This is used for objdump. # Find binutils tools. This is used for objdump.
binutilsbinpath = os.path.abspath(os.environ.get('BINUTILS_BIN_PATH')) binutilsbinpath = os.path.abspath(os.environ.get('BINUTILS_BIN_PATH'))
# Define the location of the llvm2ice tool. # Define the location of the pnacl-sz tool.
llvm2icetool = os.path.join(bin_root, 'llvm2ice') pnacl_sz_tool = os.path.join(bin_root, 'pnacl-sz')
llvm2iceatts = shellcmd(' '.join([llvm2icetool, '--build-atts']), pnacl_sz_atts = shellcmd(' '.join([pnacl_sz_tool, '--build-atts']),
echo=False).split() echo=False).split()
# Add build attributes of llvm2ice tool to the set of available features. # Add build attributes of pnacl-sz tool to the set of available features.
config.available_features.update(llvm2iceatts) config.available_features.update(pnacl_sz_atts)
def if_cond_flag(Value): def if_cond_flag(Value):
return '--cond=true' if Value else '--cond=false' return '--cond=true' if Value else '--cond=false'
# shell conditional commands. # shell conditional commands.
if_atts = [os.path.join(pydir, 'if.py')] if_atts = [os.path.join(pydir, 'if.py')]
if_atts_cmd = if_atts + ['--have=' + att for att in llvm2iceatts] if_atts_cmd = if_atts + ['--have=' + att for att in pnacl_sz_atts]
ifl2i_atts_cmd = if_atts + [if_cond_flag('allow_llvm_ir' in llvm2iceatts), ifl2i_atts_cmd = if_atts + [if_cond_flag('allow_llvm_ir' in pnacl_sz_atts),
'--command'] '--command']
iflc2i_atts_cmd = if_atts + [if_cond_flag('allow_llvm_ir_as_input' iflc2i_atts_cmd = if_atts + [if_cond_flag('allow_llvm_ir_as_input'
in llvm2iceatts), '--command'] in pnacl_sz_atts), '--command']
# Base command for running llvm2ice # Base command for running pnacl-sz
llvm2ice_cmd = [os.path.join(pydir, 'run-llvm2ice.py'), pnacl_sz_cmd = [os.path.join(pydir, 'run-pnacl-sz.py'),
'--llvm2ice', llvm2icetool, '--pnacl-sz', pnacl_sz_tool,
'--llvm-bin-path', llvmbinpath, '--llvm-bin-path', llvmbinpath,
'--binutils-bin-path', binutilsbinpath] '--binutils-bin-path', binutilsbinpath]
...@@ -102,13 +102,13 @@ config.substitutions.append(('%ifl', ' '.join(ifl2i_atts_cmd))) ...@@ -102,13 +102,13 @@ config.substitutions.append(('%ifl', ' '.join(ifl2i_atts_cmd)))
config.substitutions.append(('%if', ' '.join(if_atts_cmd))) config.substitutions.append(('%if', ' '.join(if_atts_cmd)))
# Translate LLVM source for each compiler setup. # Translate LLVM source for each compiler setup.
config.substitutions.append(('%p2i', ' '.join(llvm2ice_cmd))) config.substitutions.append(('%p2i', ' '.join(pnacl_sz_cmd)))
config.substitutions.append(('%l2i', ' '.join(ifl2i_atts_cmd + llvm2ice_cmd config.substitutions.append(('%l2i', ' '.join(ifl2i_atts_cmd + pnacl_sz_cmd
+ ['--llvm']))) + ['--llvm'])))
config.substitutions.append(('%lc2i', ' '.join(iflc2i_atts_cmd + llvm2ice_cmd config.substitutions.append(('%lc2i', ' '.join(iflc2i_atts_cmd + pnacl_sz_cmd
+ ['--llvm-source']))) + ['--llvm-source'])))
config.substitutions.append(('%llvm2ice', llvm2icetool)) config.substitutions.append(('%pnacl_sz', pnacl_sz_tool))
llvmbintools = [r"\bFileCheck\b", llvmbintools = [r"\bFileCheck\b",
r"\bllvm-as\b", r"\bllvm-as\b",
...@@ -150,4 +150,4 @@ def dbg(s): ...@@ -150,4 +150,4 @@ def dbg(s):
dbg('bin_root = %s' % bin_root) dbg('bin_root = %s' % bin_root)
dbg('llvmbinpath = %s' % llvmbinpath) dbg('llvmbinpath = %s' % llvmbinpath)
dbg('binutilsbinpath = %s' % binutilsbinpath) dbg('binutilsbinpath = %s' % binutilsbinpath)
dbg("Build attributes = %s" % llvm2iceatts) dbg("Build attributes = %s" % pnacl_sz_atts)
; Tests the Subzero "name mangling" when using the "llvm2ice --prefix" ; Tests the Subzero "name mangling" when using the "pnacl-sz --prefix"
; option. Also does a quick smoke test of -ffunction-sections. ; option. Also does a quick smoke test of -ffunction-sections.
; REQUIRES: allow_dump ; REQUIRES: allow_dump
......
...@@ -2,13 +2,13 @@ ...@@ -2,13 +2,13 @@
; RUN: %if --need=allow_dump --command llvm-as < %s \ ; RUN: %if --need=allow_dump --command llvm-as < %s \
; RUN: | %if --need=allow_dump --command pnacl-freeze \ ; RUN: | %if --need=allow_dump --command pnacl-freeze \
; RUN: | %if --need=allow_dump --command not %llvm2ice -notranslate \ ; RUN: | %if --need=allow_dump --command not %pnacl_sz -notranslate \
; RUN: -build-on-read -allow-pnacl-reader-error-recovery \ ; RUN: -build-on-read -allow-pnacl-reader-error-recovery \
; RUN: | %if --need=allow_dump --command FileCheck %s ; RUN: | %if --need=allow_dump --command FileCheck %s
; RUN: %if --need=no_dump --command llvm-as < %s \ ; RUN: %if --need=no_dump --command llvm-as < %s \
; RUN: | %if --need=no_dump --command pnacl-freeze \ ; RUN: | %if --need=no_dump --command pnacl-freeze \
; RUN: | %if --need=no_dump --command not %llvm2ice -notranslate \ ; RUN: | %if --need=no_dump --command not %pnacl_sz -notranslate \
; RUN: -build-on-read -allow-pnacl-reader-error-recovery \ ; RUN: -build-on-read -allow-pnacl-reader-error-recovery \
; RUN: | %if --need=no_dump --command FileCheck %s --check-prefix=MIN ; RUN: | %if --need=no_dump --command FileCheck %s --check-prefix=MIN
......
; Tests that we don't get fooled by a fake NaCl intrinsic. ; Tests that we don't get fooled by a fake NaCl intrinsic.
; TODO(kschimpf) Find way to run this through p2i. Note: Can't do this ; TODO(kschimpf) Find way to run this through p2i. Note: Can't do this
; currently because run-llvm2ice.py raises exception on error, ; currently because run-pnacl-sz.py raises exception on error,
; and output is lost. ; and output is lost.
; RUN: %if --need=allow_dump --command llvm-as < %s \ ; RUN: %if --need=allow_dump --command llvm-as < %s \
; RUN: | %if --need=allow_dump --command pnacl-freeze \ ; RUN: | %if --need=allow_dump --command pnacl-freeze \
; RUN -allow-local-symbol-tables \ ; RUN -allow-local-symbol-tables \
; RUN: | %if --need=allow_dump --command not %llvm2ice -notranslate \ ; RUN: | %if --need=allow_dump --command not %pnacl_sz -notranslate \
; RUN: -verbose=inst -build-on-read \ ; RUN: -verbose=inst -build-on-read \
; RUN: -allow-pnacl-reader-error-recovery \ ; RUN: -allow-pnacl-reader-error-recovery \
; RUN: -allow-local-symbol-tables \ ; RUN: -allow-local-symbol-tables \
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
; RUN: %if --need=no_dump --command llvm-as < %s \ ; RUN: %if --need=no_dump --command llvm-as < %s \
; RUN: | %if --need=no_dump --command pnacl-freeze \ ; RUN: | %if --need=no_dump --command pnacl-freeze \
; RUN -allow-local-symbol-tables \ ; RUN -allow-local-symbol-tables \
; RUN: | %if --need=no_dump --command not %llvm2ice -notranslate \ ; RUN: | %if --need=no_dump --command not %pnacl_sz -notranslate \
; RUN: -verbose=inst -build-on-read \ ; RUN: -verbose=inst -build-on-read \
; RUN: -allow-pnacl-reader-error-recovery \ ; RUN: -allow-pnacl-reader-error-recovery \
; RUN: -allow-local-symbol-tables \ ; RUN: -allow-local-symbol-tables \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment