Lines Matching refs:t
392 def parse_description_string(t, descr_str): argument
409 if '#' in t.soname_map:
416 if not obj in t.objs:
418 if obj in t.soname_map:
420 % (obj, t.soname_map[obj]))
421 t.soname_map[obj] = val
425 t.add_deps(curr_objs, [value])
427 t.add_callrefs(curr_objs, [value])
430 if not value in t.objs:
431 t.objs.append(value)
436 t.add_deps(curr_objs, list (objset))
438 t.add_callrefs(curr_objs, list (objset))
442 if not o in t.objs:
443 t.objs.append(o)
452 t.add_deps(curr_objs, objs)
454 t.add_callrefs(curr_objs, objs)
458 if not o in t.objs:
459 t.objs.append(o)
463 t.add_deps(curr_objs, ['*'])
465 t.add_callrefs(curr_objs, ['*'])
479 if not obj in t.dep_permutations:
481 t.dep_permutations[obj] = []
484 if t.main_program:
492 t.add_callrefs(curr_objs, ["#"])
493 process_main_program(t, value[1:len(value)-1])
519 return t
522 def process_testcase(t): argument
524 assert t.test_name
526 base_test_name = t.test_name
537 def find_objs_not_depended_on(t): argument
539 for obj in t.objs:
541 for r in t.deps.items():
549 non_dep_tgt_objs = find_objs_not_depended_on(t)
550 for obj in t.objs:
551 if obj in t.deps:
552 deps = t.deps[obj]
554 t.deps[obj].remove('*')
555 t.add_deps([obj], non_dep_tgt_objs)
556 if obj in t.callrefs:
557 deps = t.callrefs[obj]
559 t.deps[obj].remove('*')
560 t.add_callrefs([obj], non_dep_tgt_objs)
561 if "#" in t.deps:
562 deps = t.deps["#"]
564 t.deps["#"].remove('*')
565 t.add_deps(["#"], non_dep_tgt_objs)
570 if t.main_program_default_deps:
575 t.add_deps(["#"], main_deps)
579 print("Testcase: %s" % (t.test_name))
580 print("All objects: %s" % (t.objs))
582 for r in t.deps.items():
585 for r in t.dep_permutations.items():
588 for r in t.callrefs.items():
591 print(t.main_program)
611 def dfs(t, fn): argument
616 if obj in t.deps:
617 for dep in t.deps[obj]:
622 for obj in t.objs:
967 if t.dep_permutations:
969 for r in t.dep_permutations.items():
971 if obj in t.deps and len(t.deps[obj]) > 1:
972 deps = t.deps[obj]
973 t.dep_permutations[obj] = list(itertools.permutations (deps))
976 def enum_permutations(t, perm_list): argument
979 def enum_permutations_rec(t, perm_list): argument
988 enum_permutations_rec(t, perm_list[1:])
991 t.deps[obj] = deps
995 enum_permutations_rec(t, perm_list[1:])
1001 generate_testcase(t, ("_" + str (test_subindex)
1004 enum_permutations_rec(t, perm_list)
1007 for r in t.expected_outputs.items():
1011 f = open(testpfx_src + t.test_name + sfx + ".exp", "w")
1018 t.sh = open(testpfx_src + t.test_name + ".sh", "w")
1019 t.sh.write("#!/bin/sh\n")
1020 t.sh.write("# Test driver for %s, generated by "
1021 "dso-ordering-test.py\n" % (t.test_name))
1022 t.sh.write("common_objpfx=$1\n")
1023 t.sh.write("test_wrapper_env=$2\n")
1024 t.sh.write("run_program_env=$3\n")
1025 t.sh.write("something_failed=false\n")
1031 enum_permutations(t, list (t.dep_permutations.items()))
1034 generate_testcase(t, "")
1037 if t.xfail:
1038 makefile.write("test-xfail-%s = yes\n" % t.test_name)
1042 for r in t.expected_outputs.items():
1047 t.test_name, sfx)
1051 % (t.test_name, test_srcdir, t.test_name,
1056 if t.xtest:
1057 makefile.write("xtests-special += $(objpfx)%s.out\n" % (t.test_name))
1059 makefile.write("tests-special += $(objpfx)%s.out\n" % (t.test_name))
1064 t.sh.write("if $something_failed; then\n"
1069 "fi\n" % (("X" if t.xfail else ""),
1070 t.test_name))
1071 t.sh.close()
1081 t = None
1110 if not t:
1118 t.expected_outputs[tsstr] = (m.group(2), xfail)
1121 t.xfail |= xfail
1123 if t:
1126 process_testcase(t)
1127 t = TestDescr()
1130 t.xtest = True
1131 t.test_name = x.group(1)
1133 t.test_name = lhs
1135 parse_description_string(t, descr_string)
1139 if not t:
1141 parse_description_string(t, line)
1143 if t:
1144 process_testcase(t)
1159 t = TestDescr()
1160 t.test_name = test_name
1161 parse_description_string(t, description)
1162 process_testcase(t)