Index: Makefile.standalone |
diff --git a/Makefile.standalone b/Makefile.standalone |
index 64796c9b184aad1621269eff8b1fa4da043b87b6..1493ac49bc94838c432df0c85b4534ef329529be 100644 |
--- a/Makefile.standalone |
+++ b/Makefile.standalone |
@@ -138,6 +138,19 @@ ifdef MSAN |
LD_EXTRA += -fsanitize=memory |
endif |
+ifdef FORCEASM |
+ FORCEASM_FLAG = --filetype=asm |
+ # With --filetype=asm and --sandbox, the llvm-mc assembler emits the lock and |
+ # 16-bit prefixes in the "wrong" order, causing the validator to reject the |
+ # resulting nexe. So we just disable those tests for now. |
+ FORCEASM_XTEST_EXCLUDES = -e x8632,sandbox,test_sync_atomic |
+ FORCEASM_LIT_PARAM = --param=FORCEASM |
+else |
+ FORCEASM_FLAG = |
+ FORCEASM_XTEST_EXCLUDES = |
+ FORCEASM_LIT_PARAM = |
+endif |
+ |
SB_OBJDIR := $(OBJDIR)+Sandboxed |
$(info -----------------------------------------------) |
@@ -389,7 +402,7 @@ runtime.is.built: $(RT_SRC) pydir/build-runtime.py |
check-lit: $(OBJDIR)/pnacl-sz make_symlink |
PNACL_BIN_PATH=$(PNACL_BIN_PATH) \ |
- $(LLVM_SRC_PATH)/utils/lit/lit.py -sv tests_lit |
+ $(LLVM_SRC_PATH)/utils/lit/lit.py -sv tests_lit $(FORCEASM_LIT_PARAM) |
ifdef MINIMAL |
check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime |
@@ -402,6 +415,8 @@ check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime |
# TODO(jpp): reenable the x86-64 tests. |
./pydir/crosstest_generator.py -v --lit \ |
--toolchain-root $(TOOLCHAIN_ROOT) \ |
+ $(FORCEASM_FLAG) \ |
+ $(FORCEASM_XTEST_EXCLUDES) \ |
-i x8632,native,sse2 \ |
-i x8632,native,sse4.1,test_vector_ops \ |
-i x8632,sandbox,sse4.1,Om1 \ |
@@ -476,6 +491,11 @@ check-presubmit presubmit: |
# Run spec2k for x86-32 without advanced phi lowering. |
+make -f Makefile.standalone \ |
SPECFLAGS='--sz=--phi-edge-split=0' check-spec |
+# Run cross tests and lit tests to validate filetype=asm output. |
+ +make -f Makefile.standalone \ |
+ check-xtest FORCEASM=1 |
Jim Stichnoth
2016/01/10 03:08:55
Can you do this with a single sub-command?
+make
sehr
2016/01/11 21:49:47
Done.
|
+ +make -f Makefile.standalone \ |
+ check-lit FORCEASM=1 |
# Build spec2k for arm32. |
+make -f Makefile.standalone \ |
TARGET=arm32 SPECBUILDONLY=true check-spec |