Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(125)

Unified Diff: pydir/build-runtime.py

Issue 1409863006: Subzero. ARM32. Refactors atomic intrinsics lowering. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pydir/build-runtime.py
diff --git a/pydir/build-runtime.py b/pydir/build-runtime.py
index 2d5cf3dd00b15ee8eecf9412ee86261968be13db..c4ba6d47e63aef0dbff6347d4bc6ba1441cd5826 100755
--- a/pydir/build-runtime.py
+++ b/pydir/build-runtime.py
@@ -65,14 +65,27 @@ def MakeRuntimesForTarget(target_info, ll_files,
'-target=' + target_info.triple,
'-c',
'{srcdir}/szrt_profiler.c'.format(srcdir=srcdir),
- '-o', TmpFile('{dir}/szrt_profiler_native_{target}.o')
+ '-o', TmpFile('{dir}/szrt_native_profiler_{target}.o')
+ ], echo=verbose)
+ # Assemble srcdir/szrt_asm_{target}.s to tempdir/szrt_asm_{target}.o.
+ shellcmd(['llvm-mc',
+ '-triple=' + target_info.triple, '--defsym NATIVE=1',
+ '-filetype=obj',
+ '-o', TmpFile('{dir}/szrt_native_asm_{target}.o'),
+ '{srcdir}/szrt_asm_{target}.s'.format(
+ srcdir=srcdir, target=target_info.target)
], echo=verbose)
# Write full szrt_native_{target}.o.
PartialLink([TmpFile('{dir}/szrt_native_{target}.tmp.o'),
- TmpFile('{dir}/szrt_profiler_native_{target}.o')],
+ TmpFile('{dir}/szrt_native_asm_{target}.o'),
+ TmpFile('{dir}/szrt_native_profiler_{target}.o')],
['-m {ld_emu}'.format(ld_emu=target_info.ld_emu)],
OutFile('{rtdir}/szrt_native_{target}.o'),
verbose)
+ shellcmd(['le32-nacl-objcopy',
+ '--strip-symbol=NATIVE',
+ OutFile('{rtdir}/szrt_native_{target}.o')])
+
# Helper function for building the sandboxed runtime.
def MakeSandboxedRuntime():
"""Builds just the sandboxed runtime."""
@@ -82,8 +95,26 @@ def MakeRuntimesForTarget(target_info, ll_files,
Translate(ll_files,
['-mtriple=' + targets.ConvertTripleToNaCl(target_info.triple)] +
target_info.llc_flags,
- OutFile('{rtdir}/szrt_sb_{target}.o'),
+ TmpFile('{dir}/szrt_sb_{target}.tmp.o'),
verbose)
+ # Assemble srcdir/szrt_asm_{target}.s to tempdir/szrt_asm_{target}.o.
+ shellcmd(['llvm-mc',
+ '-triple=' + targets.ConvertTripleToNaCl(target_info.triple),
+ '--defsym NACL=1',
+ '-filetype=obj',
+ '-o', TmpFile('{dir}/szrt_sb_asm_{target}.o'),
+ '{srcdir}/szrt_asm_{target}.s'.format(
+ srcdir=srcdir, target=target_info.target)
+ ], echo=verbose)
+ PartialLink([TmpFile('{dir}/szrt_sb_{target}.tmp.o'),
+ TmpFile('{dir}/szrt_sb_asm_{target}.o')],
+ ['-m {ld_emu}'.format(ld_emu=target_info.sb_emu)],
+ OutFile('{rtdir}/szrt_sb_{target}.o'),
+ verbose)
+ shellcmd(['le32-nacl-objcopy',
+ '--strip-symbol=NACL',
+ OutFile('{rtdir}/szrt_sb_{target}.o')])
+
# Helper function for building the Non-SFI runtime.
def MakeNonsfiRuntime():
"""Builds just the nonsfi runtime."""
@@ -96,18 +127,22 @@ def MakeRuntimesForTarget(target_info, ll_files,
verbose)
# Assemble srcdir/szrt_asm_{target}.s to tempdir/szrt_asm_{target}.o.
shellcmd(['llvm-mc',
- '-triple=' + target_info.triple,
+ '-triple=' + target_info.triple, '--defsym NONSFI=1',
'-filetype=obj',
- '-o', TmpFile('{dir}/szrt_asm_{target}.o'),
+ '-o', TmpFile('{dir}/szrt_nonsfi_asm_{target}.o'),
'{srcdir}/szrt_asm_{target}.s'.format(
srcdir=srcdir, target=target_info.target)
], echo=verbose)
# Write full szrt_nonsfi_{target}.o.
PartialLink([TmpFile('{dir}/szrt_nonsfi_{target}.tmp.o'),
- TmpFile('{dir}/szrt_asm_{target}.o')],
+ TmpFile('{dir}/szrt_nonsfi_asm_{target}.o')],
['-m {ld_emu}'.format(ld_emu=target_info.ld_emu)],
OutFile('{rtdir}/szrt_nonsfi_{target}.o'),
verbose)
+ shellcmd(['le32-nacl-objcopy',
+ '--strip-symbol=NONSFI',
+ OutFile('{rtdir}/szrt_nonsfi_{target}.o')])
+
# Run the helper functions.
MakeNativeRuntime()
« no previous file with comments | « crosstest/test_sync_atomic.cpp ('k') | pydir/targets.py » ('j') | src/IceTargetLoweringARM32.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698