OLD | NEW |
---|---|
1 # The following variables will likely need to be modified, depending on where | 1 # The following variables will likely need to be modified, depending on where |
2 # and how you built LLVM & Clang. They can be overridden in a command-line | 2 # and how you built LLVM & Clang. They can be overridden in a command-line |
3 # invocation of make, like: | 3 # invocation of make, like: |
4 # | 4 # |
5 # make LLVM_SRC_PATH=<path> LIBCXX_INSTALL_PATH=<path> CLANG_PATH=<path> \ | 5 # make LLVM_SRC_PATH=<path> LIBCXX_INSTALL_PATH=<path> CLANG_PATH=<path> \ |
6 # PNACL_BIN_PATH=<path> ... | 6 # PNACL_BIN_PATH=<path> ... |
7 # | 7 # |
8 | 8 |
9 # LLVM_SRC_PATH is the path to the root of the checked out source code. This | 9 # LLVM_SRC_PATH is the path to the root of the checked out source code. This |
10 # directory should contain the configure script, the include/ and lib/ | 10 # directory should contain the configure script, the include/ and lib/ |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
131 LD_EXTRA += -fsanitize=address | 131 LD_EXTRA += -fsanitize=address |
132 endif | 132 endif |
133 | 133 |
134 ifdef MSAN | 134 ifdef MSAN |
135 # TODO(ascull): this has an as yet undiagnosed uninitialized memory access | 135 # TODO(ascull): this has an as yet undiagnosed uninitialized memory access |
136 OBJDIR := $(OBJDIR)+MSan | 136 OBJDIR := $(OBJDIR)+MSan |
137 CXX_EXTRA += -fsanitize=memory | 137 CXX_EXTRA += -fsanitize=memory |
138 LD_EXTRA += -fsanitize=memory | 138 LD_EXTRA += -fsanitize=memory |
139 endif | 139 endif |
140 | 140 |
141 ifdef FORCEASM | |
142 FORCEASM_FLAG = --filetype=asm | |
143 FORCEASM_XTEST_EXCLUDES = -e x8632,sandbox,test_sync_atomic | |
Jim Stichnoth
2015/12/20 18:42:23
Explain this, e.g.:
# With --filetype=asm and --s
sehr
2016/01/07 18:53:11
Done.
| |
144 FORCEASM_LIT_PARAM = --param=FORCEASM | |
145 else | |
146 FORCEASM_FLAG = | |
147 FORCEASM_XTEST_EXCLUDES = | |
148 FORCEASM_LIT_PARAM = | |
149 endif | |
150 | |
141 SB_OBJDIR := $(OBJDIR)+Sandboxed | 151 SB_OBJDIR := $(OBJDIR)+Sandboxed |
142 | 152 |
143 $(info -----------------------------------------------) | 153 $(info -----------------------------------------------) |
144 $(info Using LLVM_SRC_PATH = $(LLVM_SRC_PATH)) | 154 $(info Using LLVM_SRC_PATH = $(LLVM_SRC_PATH)) |
145 $(info Using SB_LLVM_PATH = $(SB_LLVM_PATH)) | 155 $(info Using SB_LLVM_PATH = $(SB_LLVM_PATH)) |
146 $(info Using NACL_ROOT = $(NACL_ROOT)) | 156 $(info Using NACL_ROOT = $(NACL_ROOT)) |
147 $(info Using TOOLCHAIN_ROOT = $(TOOLCHAIN_ROOT)) | 157 $(info Using TOOLCHAIN_ROOT = $(TOOLCHAIN_ROOT)) |
148 $(info Using PNACL_TOOLCHAIN_ROOT = $(PNACL_TOOLCHAIN_ROOT)) | 158 $(info Using PNACL_TOOLCHAIN_ROOT = $(PNACL_TOOLCHAIN_ROOT)) |
149 $(info Using PNACL_BIN_PATH = $(PNACL_BIN_PATH)) | 159 $(info Using PNACL_BIN_PATH = $(PNACL_BIN_PATH)) |
150 $(info Using CLANG_PATH = $(CLANG_PATH)) | 160 $(info Using CLANG_PATH = $(CLANG_PATH)) |
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
377 # Use runtime.is.built so that build-runtime.py is invoked only once | 387 # Use runtime.is.built so that build-runtime.py is invoked only once |
378 # even in a parallel build. | 388 # even in a parallel build. |
379 .INTERMEDIATE: runtime.is.built | 389 .INTERMEDIATE: runtime.is.built |
380 $(RT_OBJ): runtime.is.built | 390 $(RT_OBJ): runtime.is.built |
381 runtime.is.built: $(RT_SRC) pydir/build-runtime.py | 391 runtime.is.built: $(RT_SRC) pydir/build-runtime.py |
382 @echo ================ Building Subzero runtime ================ | 392 @echo ================ Building Subzero runtime ================ |
383 ./pydir/build-runtime.py -v --pnacl-root $(PNACL_TOOLCHAIN_ROOT) | 393 ./pydir/build-runtime.py -v --pnacl-root $(PNACL_TOOLCHAIN_ROOT) |
384 | 394 |
385 check-lit: $(OBJDIR)/pnacl-sz make_symlink | 395 check-lit: $(OBJDIR)/pnacl-sz make_symlink |
386 PNACL_BIN_PATH=$(PNACL_BIN_PATH) \ | 396 PNACL_BIN_PATH=$(PNACL_BIN_PATH) \ |
387 » $(LLVM_SRC_PATH)/utils/lit/lit.py -sv tests_lit | 397 » $(LLVM_SRC_PATH)/utils/lit/lit.py -sv tests_lit $(FORCEASM_LIT_PARAM) |
388 | 398 |
389 ifdef MINIMAL | 399 ifdef MINIMAL |
390 check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime | 400 check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime |
391 @echo "Crosstests disabled, minimal build" | 401 @echo "Crosstests disabled, minimal build" |
392 else | 402 else |
393 check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime | 403 check-xtest: $(OBJDIR)/pnacl-sz make_symlink runtime |
394 # Do all native/sse2 tests, but only test_vector_ops for native/sse4.1. | 404 # Do all native/sse2 tests, but only test_vector_ops for native/sse4.1. |
395 # For (slow) sandboxed tests, limit to Om1/sse4.1. | 405 # For (slow) sandboxed tests, limit to Om1/sse4.1. |
396 # TODO(jpp): implement x8664 sandbox, then enable xtests. | 406 # TODO(jpp): implement x8664 sandbox, then enable xtests. |
397 # TODO(jpp): reenable the x86-64 tests. | 407 # TODO(jpp): reenable the x86-64 tests. |
398 ./pydir/crosstest_generator.py -v --lit \ | 408 ./pydir/crosstest_generator.py -v --lit \ |
399 --toolchain-root $(TOOLCHAIN_ROOT) \ | 409 --toolchain-root $(TOOLCHAIN_ROOT) \ |
410 $(FORCEASM_FLAG) \ | |
411 $(FORCEASM_XTEST_EXCLUDES) \ | |
400 -i x8632,native,sse2 \ | 412 -i x8632,native,sse2 \ |
401 -i x8632,native,sse4.1,test_vector_ops \ | 413 -i x8632,native,sse4.1,test_vector_ops \ |
402 -i x8632,sandbox,sse4.1,Om1 \ | 414 -i x8632,sandbox,sse4.1,Om1 \ |
403 -e x8664,native,sse2 \ | 415 -e x8664,native,sse2 \ |
404 -e x8664,native,sse4.1,test_vector_ops \ | 416 -e x8664,native,sse4.1,test_vector_ops \ |
405 -e x8664,native,sse2,test_global \ | 417 -e x8664,native,sse2,test_global \ |
406 -i arm32,neon \ | 418 -i arm32,neon \ |
407 -e arm32,neon,test_vector_ops \ | 419 -e arm32,neon,test_vector_ops \ |
408 -e arm32,neon,test_select | 420 -e arm32,neon,test_select |
409 PNACL_BIN_PATH=$(PNACL_BIN_PATH) \ | 421 PNACL_BIN_PATH=$(PNACL_BIN_PATH) \ |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
457 DEBUG=1 CHECK_X86_ASM=1 check-unit | 469 DEBUG=1 CHECK_X86_ASM=1 check-unit |
458 # Run spec2k for x86-32. | 470 # Run spec2k for x86-32. |
459 +make -f Makefile.standalone \ | 471 +make -f Makefile.standalone \ |
460 check check-spec | 472 check check-spec |
461 # Build spec2k under -Om1/x86-32, to check for liveness errors. | 473 # Build spec2k under -Om1/x86-32, to check for liveness errors. |
462 +make -f Makefile.standalone \ | 474 +make -f Makefile.standalone \ |
463 SPECFLAGS='-Om1' SPECBUILDONLY=true check-spec | 475 SPECFLAGS='-Om1' SPECBUILDONLY=true check-spec |
464 # Run spec2k for x86-32 without advanced phi lowering. | 476 # Run spec2k for x86-32 without advanced phi lowering. |
465 +make -f Makefile.standalone \ | 477 +make -f Makefile.standalone \ |
466 SPECFLAGS='--sz=--phi-edge-split=0' check-spec | 478 SPECFLAGS='--sz=--phi-edge-split=0' check-spec |
479 # Run cross tests to check for regressions in filetype=asm | |
Jim Stichnoth
2015/12/20 18:42:23
How about more positive phrasing:
Run cross test
sehr
2016/01/07 18:53:11
Done.
| |
480 +make -f Makefile.standalone \ | |
481 check-xtest FORCEASM=1 | |
467 # Build spec2k for arm32. | 482 # Build spec2k for arm32. |
468 +make -f Makefile.standalone \ | 483 +make -f Makefile.standalone \ |
469 TARGET=arm32 SPECBUILDONLY=true check-spec | 484 TARGET=arm32 SPECBUILDONLY=true check-spec |
470 # Build spec2k under -Om1/arm32. | 485 # Build spec2k under -Om1/arm32. |
471 +make -f Makefile.standalone \ | 486 +make -f Makefile.standalone \ |
472 TARGET=arm32 SPECFLAGS='-Om1' SPECBUILDONLY=true check-spec | 487 TARGET=arm32 SPECFLAGS='-Om1' SPECBUILDONLY=true check-spec |
473 # Run a few spec2k tests for arm32 using qemu. | 488 # Run a few spec2k tests for arm32 using qemu. |
474 +make -f Makefile.standalone \ | 489 +make -f Makefile.standalone \ |
475 TARGET=arm32 ALLSPEC='176.gcc 181.mcf 254.gap' check-spec | 490 TARGET=arm32 ALLSPEC='176.gcc 181.mcf 254.gap' check-spec |
476 # Provide validation of user awesomeness! | 491 # Provide validation of user awesomeness! |
(...skipping 22 matching lines...) Expand all Loading... | |
499 | 514 |
500 docs: | 515 docs: |
501 doxygen Doxyfile | 516 doxygen Doxyfile |
502 @echo See file://`pwd`/docs/html/index.html | 517 @echo See file://`pwd`/docs/html/index.html |
503 | 518 |
504 clean: | 519 clean: |
505 rm -rf pnacl-sz *.o $(OBJDIR) $(SB_OBJDIR) build/pnacl-sz.bloat.json | 520 rm -rf pnacl-sz *.o $(OBJDIR) $(SB_OBJDIR) build/pnacl-sz.bloat.json |
506 | 521 |
507 clean-all: clean | 522 clean-all: clean |
508 rm -rf build/ docs/ | 523 rm -rf build/ docs/ |
OLD | NEW |