Skip to content

Commit 552525c

Browse files
committed
---
yaml --- r: 64254 b: refs/heads/snap-stage3 c: b8e95c4 h: refs/heads/master v: v3
1 parent f1ee147 commit 552525c

File tree

12 files changed

+342
-785
lines changed

12 files changed

+342
-785
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 2d28d645422c1617be58c8ca7ad9a457264ca850
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: 4478ded57c3a6cd86ad2e6b8cac1f6b4d46d1130
4+
refs/heads/snap-stage3: b8e95c46024754b49bdeb24b338e4b24e7c0ef23
55
refs/heads/try: 7b78b52e602bb3ea8174f9b2006bff3315f03ef9
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b

branches/snap-stage3/configure

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -731,7 +731,6 @@ do
731731
make_dir $h/test/perf
732732
make_dir $h/test/pretty
733733
make_dir $h/test/debug-info
734-
make_dir $h/test/codegen
735734
make_dir $h/test/doc-tutorial
736735
make_dir $h/test/doc-tutorial-ffi
737736
make_dir $h/test/doc-tutorial-macros

branches/snap-stage3/mk/tests.mk

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,6 @@ check-stage$(1)-T-$(2)-H-$(3)-exec: \
246246
check-stage$(1)-T-$(2)-H-$(3)-crates-exec \
247247
check-stage$(1)-T-$(2)-H-$(3)-bench-exec \
248248
check-stage$(1)-T-$(2)-H-$(3)-debuginfo-exec \
249-
check-stage$(1)-T-$(2)-H-$(3)-codegen-exec \
250249
check-stage$(1)-T-$(2)-H-$(3)-doc-exec \
251250
check-stage$(1)-T-$(2)-H-$(3)-pretty-exec
252251

@@ -431,8 +430,6 @@ CFAIL_RS := $(wildcard $(S)src/test/compile-fail/*.rs)
431430
BENCH_RS := $(wildcard $(S)src/test/bench/*.rs)
432431
PRETTY_RS := $(wildcard $(S)src/test/pretty/*.rs)
433432
DEBUGINFO_RS := $(wildcard $(S)src/test/debug-info/*.rs)
434-
CODEGEN_RS := $(wildcard $(S)src/test/codegen/*.rs)
435-
CODEGEN_CC := $(wildcard $(S)src/test/codegen/*.cc)
436433

437434
# perf tests are the same as bench tests only they run under
438435
# a performance monitor.
@@ -446,7 +443,6 @@ BENCH_TESTS := $(BENCH_RS)
446443
PERF_TESTS := $(PERF_RS)
447444
PRETTY_TESTS := $(PRETTY_RS)
448445
DEBUGINFO_TESTS := $(DEBUGINFO_RS)
449-
CODEGEN_TESTS := $(CODEGEN_RS) $(CODEGEN_CC)
450446

451447
CTEST_SRC_BASE_rpass = run-pass
452448
CTEST_BUILD_BASE_rpass = run-pass
@@ -483,19 +479,10 @@ CTEST_BUILD_BASE_debuginfo = debug-info
483479
CTEST_MODE_debuginfo = debug-info
484480
CTEST_RUNTOOL_debuginfo = $(CTEST_RUNTOOL)
485481

486-
CTEST_SRC_BASE_codegen = codegen
487-
CTEST_BUILD_BASE_codegen = codegen
488-
CTEST_MODE_codegen = codegen
489-
CTEST_RUNTOOL_codegen = $(CTEST_RUNTOOL)
490-
491482
ifeq ($(CFG_GDB),)
492483
CTEST_DISABLE_debuginfo = "no gdb found"
493484
endif
494485

495-
ifeq ($(CFG_CLANG),)
496-
CTEST_DISABLE_codegen = "no clang found"
497-
endif
498-
499486
ifeq ($(CFG_OSTYPE),apple-darwin)
500487
CTEST_DISABLE_debuginfo = "gdb on darwing needs root"
501488
endif
@@ -520,8 +507,6 @@ CTEST_COMMON_ARGS$(1)-T-$(2)-H-$(3) := \
520507
--compile-lib-path $$(HLIB$(1)_H_$(3)) \
521508
--run-lib-path $$(TLIB$(1)_T_$(2)_H_$(3)) \
522509
--rustc-path $$(HBIN$(1)_H_$(3))/rustc$$(X_$(3)) \
523-
--clang-path $(if $(CFG_CLANG),$(CFG_CLANG),clang) \
524-
--llvm-bin-path $(CFG_LLVM_INST_DIR_$(CFG_BUILD_TRIPLE))/bin \
525510
--aux-base $$(S)src/test/auxiliary/ \
526511
--stage-id stage$(1)-$(2) \
527512
--target $(2) \
@@ -537,7 +522,6 @@ CTEST_DEPS_cfail_$(1)-T-$(2)-H-$(3) = $$(CFAIL_TESTS)
537522
CTEST_DEPS_bench_$(1)-T-$(2)-H-$(3) = $$(BENCH_TESTS)
538523
CTEST_DEPS_perf_$(1)-T-$(2)-H-$(3) = $$(PERF_TESTS)
539524
CTEST_DEPS_debuginfo_$(1)-T-$(2)-H-$(3) = $$(DEBUGINFO_TESTS)
540-
CTEST_DEPS_codegen_$(1)-T-$(2)-H-$(3) = $$(CODEGEN_TESTS)
541525

542526
endef
543527

@@ -581,7 +565,7 @@ endif
581565

582566
endef
583567

584-
CTEST_NAMES = rpass rpass-full rfail cfail bench perf debuginfo codegen
568+
CTEST_NAMES = rpass rpass-full rfail cfail bench perf debuginfo
585569

586570
$(foreach host,$(CFG_HOST_TRIPLES), \
587571
$(eval $(foreach target,$(CFG_TARGET_TRIPLES), \
@@ -690,7 +674,6 @@ TEST_GROUPS = \
690674
bench \
691675
perf \
692676
debuginfo \
693-
codegen \
694677
doc \
695678
$(foreach docname,$(DOC_TEST_NAMES),doc-$(docname)) \
696679
pretty \

branches/snap-stage3/src/compiletest/common.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ pub enum mode {
1515
mode_run_pass,
1616
mode_pretty,
1717
mode_debug_info,
18-
mode_codegen
1918
}
2019

2120
pub struct config {
@@ -28,12 +27,6 @@ pub struct config {
2827
// The rustc executable
2928
rustc_path: Path,
3029

31-
// The clang executable
32-
clang_path: Option<Path>,
33-
34-
// The llvm binaries path
35-
llvm_bin_path: Option<Path>,
36-
3730
// The directory containing the tests to run
3831
src_base: Path,
3932

branches/snap-stage3/src/compiletest/compiletest.rs

Lines changed: 18 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ extern mod extra;
1919
use std::os;
2020

2121
use extra::getopts;
22-
use extra::getopts::groups::{optopt, optflag, reqopt};
2322
use extra::test;
2423

2524
use common::config;
@@ -28,7 +27,6 @@ use common::mode_run_fail;
2827
use common::mode_compile_fail;
2928
use common::mode_pretty;
3029
use common::mode_debug_info;
31-
use common::mode_codegen;
3230
use common::mode;
3331
use util::logv;
3432

@@ -47,54 +45,31 @@ pub fn main() {
4745
}
4846

4947
pub fn parse_config(args: ~[~str]) -> config {
50-
51-
let groups : ~[getopts::groups::OptGroup] =
52-
~[reqopt("", "compile-lib-path", "path to host shared libraries", "PATH"),
53-
reqopt("", "run-lib-path", "path to target shared libraries", "PATH"),
54-
reqopt("", "rustc-path", "path to rustc to use for compiling", "PATH"),
55-
optopt("", "clang-path", "path to executable for codegen tests", "PATH"),
56-
optopt("", "llvm-bin-path", "path to directory holding llvm binaries", "DIR"),
57-
reqopt("", "src-base", "directory to scan for test files", "PATH"),
58-
reqopt("", "build-base", "directory to deposit test outputs", "PATH"),
59-
reqopt("", "aux-base", "directory to find auxiliary test files", "PATH"),
60-
reqopt("", "stage-id", "the target-stage identifier", "stageN-TARGET"),
61-
reqopt("", "mode", "which sort of compile tests to run",
62-
"(compile-fail|run-fail|run-pass|pretty|debug-info)"),
63-
optflag("", "ignored", "run tests marked as ignored / xfailed"),
64-
optopt("", "runtool", "supervisor program to run tests under \
65-
(eg. emulator, valgrind)", "PROGRAM"),
66-
optopt("", "rustcflags", "flags to pass to rustc", "FLAGS"),
67-
optflag("", "verbose", "run tests verbosely, showing all output"),
68-
optopt("", "logfile", "file to log test execution to", "FILE"),
69-
optflag("", "jit", "run tests under the JIT"),
70-
optflag("", "newrt", "run tests on the new runtime / scheduler"),
71-
optopt("", "target", "the target to build for", "TARGET"),
72-
optopt("", "adb-path", "path to the android debugger", "PATH"),
73-
optopt("", "adb-test-dir", "path to tests for the android debugger", "PATH"),
74-
optflag("h", "help", "show this message"),
48+
let opts =
49+
~[getopts::reqopt("compile-lib-path"),
50+
getopts::reqopt("run-lib-path"),
51+
getopts::reqopt("rustc-path"), getopts::reqopt("src-base"),
52+
getopts::reqopt("build-base"), getopts::reqopt("aux-base"),
53+
getopts::reqopt("stage-id"),
54+
getopts::reqopt("mode"), getopts::optflag("ignored"),
55+
getopts::optopt("runtool"), getopts::optopt("rustcflags"),
56+
getopts::optflag("verbose"),
57+
getopts::optopt("logfile"),
58+
getopts::optflag("jit"),
59+
getopts::optflag("newrt"),
60+
getopts::optopt("target"),
61+
getopts::optopt("adb-path"),
62+
getopts::optopt("adb-test-dir")
7563
];
7664

7765
assert!(!args.is_empty());
78-
let argv0 = copy args[0];
7966
let args_ = args.tail();
80-
if args[1] == ~"-h" || args[1] == ~"--help" {
81-
let message = fmt!("Usage: %s [OPTIONS] [TESTNAME...]", argv0);
82-
println(getopts::groups::usage(message, groups));
83-
fail!()
84-
}
85-
8667
let matches =
87-
&match getopts::groups::getopts(args_, groups) {
68+
&match getopts::getopts(args_, opts) {
8869
Ok(m) => m,
8970
Err(f) => fail!(getopts::fail_str(f))
9071
};
9172

92-
if getopts::opt_present(matches, "h") || getopts::opt_present(matches, "help") {
93-
let message = fmt!("Usage: %s [OPTIONS] [TESTNAME...]", argv0);
94-
println(getopts::groups::usage(message, groups));
95-
fail!()
96-
}
97-
9873
fn opt_path(m: &getopts::Matches, nm: &str) -> Path {
9974
Path(getopts::opt_str(m, nm))
10075
}
@@ -103,8 +78,6 @@ pub fn parse_config(args: ~[~str]) -> config {
10378
compile_lib_path: getopts::opt_str(matches, "compile-lib-path"),
10479
run_lib_path: getopts::opt_str(matches, "run-lib-path"),
10580
rustc_path: opt_path(matches, "rustc-path"),
106-
clang_path: getopts::opt_maybe_str(matches, "clang-path").map(|s| Path(*s)),
107-
llvm_bin_path: getopts::opt_maybe_str(matches, "llvm-bin-path").map(|s| Path(*s)),
10881
src_base: opt_path(matches, "src-base"),
10982
build_base: opt_path(matches, "build-base"),
11083
aux_base: opt_path(matches, "aux-base"),
@@ -186,7 +159,6 @@ pub fn str_mode(s: ~str) -> mode {
186159
~"run-pass" => mode_run_pass,
187160
~"pretty" => mode_pretty,
188161
~"debug-info" => mode_debug_info,
189-
~"codegen" => mode_codegen,
190162
_ => fail!("invalid mode")
191163
}
192164
}
@@ -198,7 +170,6 @@ pub fn mode_str(mode: mode) -> ~str {
198170
mode_run_pass => ~"run-pass",
199171
mode_pretty => ~"pretty",
200172
mode_debug_info => ~"debug-info",
201-
mode_codegen => ~"codegen",
202173
}
203174
}
204175

@@ -216,9 +187,8 @@ pub fn test_opts(config: &config) -> test::TestOpts {
216187
logfile: copy config.logfile,
217188
run_tests: true,
218189
run_benchmarks: false,
219-
ratchet_metrics: None,
220-
ratchet_noise_percent: None,
221-
save_metrics: None,
190+
save_results: None,
191+
compare_results: None
222192
}
223193
}
224194

branches/snap-stage3/src/compiletest/runtest.rs

Lines changed: 1 addition & 117 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,7 @@ pub fn run(config: config, testfile: ~str) {
3939
mode_run_fail => run_rfail_test(&config, &props, &testfile),
4040
mode_run_pass => run_rpass_test(&config, &props, &testfile),
4141
mode_pretty => run_pretty_test(&config, &props, &testfile),
42-
mode_debug_info => run_debuginfo_test(&config, &props, &testfile),
43-
mode_codegen => run_codegen_test(&config, &props, &testfile)
42+
mode_debug_info => run_debuginfo_test(&config, &props, &testfile)
4443
}
4544
}
4645

@@ -836,118 +835,3 @@ fn _arm_push_aux_shared_library(config: &config, testfile: &Path) {
836835
}
837836
}
838837
}
839-
840-
// codegen tests (vs. clang)
841-
842-
fn make_o_name(config: &config, testfile: &Path) -> Path {
843-
output_base_name(config, testfile).with_filetype("o")
844-
}
845-
846-
fn append_suffix_to_stem(p: &Path, suffix: &str) -> Path {
847-
if suffix.len() == 0 {
848-
copy *p
849-
} else {
850-
let stem = p.filestem().get();
851-
p.with_filestem(stem + "-" + suffix)
852-
}
853-
}
854-
855-
fn compile_test_and_save_bitcode(config: &config, props: &TestProps,
856-
testfile: &Path) -> ProcRes {
857-
let link_args = ~[~"-L", aux_output_dir_name(config, testfile).to_str()];
858-
let llvm_args = ~[~"-c", ~"--lib", ~"--save-temps"];
859-
let args = make_compile_args(config, props,
860-
link_args + llvm_args,
861-
make_o_name, testfile);
862-
compose_and_run_compiler(config, props, testfile, args, None)
863-
}
864-
865-
fn compile_cc_with_clang_and_save_bitcode(config: &config, _props: &TestProps,
866-
testfile: &Path) -> ProcRes {
867-
let bitcodefile = output_base_name(config, testfile).with_filetype("bc");
868-
let bitcodefile = append_suffix_to_stem(&bitcodefile, "clang");
869-
let ProcArgs = ProcArgs {
870-
prog: config.clang_path.get_ref().to_str(),
871-
args: ~[~"-c",
872-
~"-emit-llvm",
873-
~"-o", bitcodefile.to_str(),
874-
testfile.with_filetype("cc").to_str() ]
875-
};
876-
compose_and_run(config, testfile, ProcArgs, ~[], "", None)
877-
}
878-
879-
fn extract_function_from_bitcode(config: &config, _props: &TestProps,
880-
fname: &str, testfile: &Path,
881-
suffix: &str) -> ProcRes {
882-
let bitcodefile = output_base_name(config, testfile).with_filetype("bc");
883-
let bitcodefile = append_suffix_to_stem(&bitcodefile, suffix);
884-
let extracted_bc = append_suffix_to_stem(&bitcodefile, "extract");
885-
let ProcArgs = ProcArgs {
886-
prog: config.llvm_bin_path.get_ref().push("llvm-extract").to_str(),
887-
args: ~[~"-func=" + fname,
888-
~"-o=" + extracted_bc.to_str(),
889-
bitcodefile.to_str() ]
890-
};
891-
compose_and_run(config, testfile, ProcArgs, ~[], "", None)
892-
}
893-
894-
fn disassemble_extract(config: &config, _props: &TestProps,
895-
testfile: &Path, suffix: &str) -> ProcRes {
896-
let bitcodefile = output_base_name(config, testfile).with_filetype("bc");
897-
let bitcodefile = append_suffix_to_stem(&bitcodefile, suffix);
898-
let extracted_bc = append_suffix_to_stem(&bitcodefile, "extract");
899-
let extracted_ll = extracted_bc.with_filetype("ll");
900-
let ProcArgs = ProcArgs {
901-
prog: config.llvm_bin_path.get_ref().push("llvm-dis").to_str(),
902-
args: ~[~"-o=" + extracted_ll.to_str(),
903-
extracted_bc.to_str() ]
904-
};
905-
compose_and_run(config, testfile, ProcArgs, ~[], "", None)
906-
}
907-
908-
909-
fn run_codegen_test(config: &config, props: &TestProps, testfile: &Path) {
910-
911-
if config.llvm_bin_path.is_none() {
912-
fatal(~"missing --llvm-bin-path");
913-
}
914-
915-
if config.clang_path.is_none() {
916-
fatal(~"missing --clang-path");
917-
}
918-
919-
let mut ProcRes = compile_test_and_save_bitcode(config, props, testfile);
920-
if ProcRes.status != 0 {
921-
fatal_ProcRes(~"compilation failed!", &ProcRes);
922-
}
923-
924-
ProcRes = extract_function_from_bitcode(config, props, "test", testfile, "");
925-
if ProcRes.status != 0 {
926-
fatal_ProcRes(~"extracting 'test' function failed", &ProcRes);
927-
}
928-
929-
ProcRes = disassemble_extract(config, props, testfile, "");
930-
if ProcRes.status != 0 {
931-
fatal_ProcRes(~"disassembling extract failed", &ProcRes);
932-
}
933-
934-
935-
let mut ProcRes = compile_cc_with_clang_and_save_bitcode(config, props, testfile);
936-
if ProcRes.status != 0 {
937-
fatal_ProcRes(~"compilation failed!", &ProcRes);
938-
}
939-
940-
ProcRes = extract_function_from_bitcode(config, props, "test", testfile, "clang");
941-
if ProcRes.status != 0 {
942-
fatal_ProcRes(~"extracting 'test' function failed", &ProcRes);
943-
}
944-
945-
ProcRes = disassemble_extract(config, props, testfile, "clang");
946-
if ProcRes.status != 0 {
947-
fatal_ProcRes(~"disassembling extract failed", &ProcRes);
948-
}
949-
950-
951-
952-
}
953-

0 commit comments

Comments
 (0)