aboutsummaryrefslogtreecommitdiff
path: root/resolv
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2018-11-22 00:47:20 +0000
committerJoseph Myers <joseph@codesourcery.com>2018-11-22 00:47:20 +0000
commitcc6c89faf3f7dc545d9794c07b6eb101192dc24d (patch)
tree21ec8bb5f5e4ec10f3f9eaf74dc74e26445a592a /resolv
parenta502c5294b46109827c970a989ee10d1a9dcb176 (diff)
downloadglibc-cc6c89faf3f7dc545d9794c07b6eb101192dc24d.zip
glibc-cc6c89faf3f7dc545d9794c07b6eb101192dc24d.tar.gz
glibc-cc6c89faf3f7dc545d9794c07b6eb101192dc24d.tar.bz2
Separate conformtest subtest generation and execution.
This patch continues moving conformtest towards running more tests in a single compiler execution by separating the generation and execution of the subtests of each test. Instead of test classes having a run method that both generates the text of the programs to be compiled or executed, and compiles or executes them, they are changed to having a gen_subtests method that just generates CompileSubTest and ExecuteSubTest objects to store the subtest names and text, and then a separate loop in HeaderTests.run deals with actually executing those subtests. This will allow for future changes to extract the text for all non-optional, non-xfail compilation subtests to try compiling those all at once, with separate compilations only if that fails, so massively reducing the number of separate compiler executions (each of which needs to parse the entire contents of the header under test, in addition to the startup cost that applies even for compiling an empty file). Tested for x86_64, and with build-many-glibcs.py. * conform/conformtest.py (CompileSubTest): New class. (ExecuteSubTest): Likewise. (ElementTest.run): Rename to gen_subtests. Append tests to self.subtests instead of running them. (ConstantTest.run): Likewise. (SymbolTest.run): Likewise. (TypeTest.run): Likewise. (TagTest.run): Likewise. (FunctionTest.run): Likewise. (VariableTest.run): Likewise. (MacroFunctionTest.run): Likewise. (MacroStrTest.run): Likewise. (HeaderTests.handle_test_line): Generate subtests for tests. (HeaderTests.run): Run subtests for tests.
Diffstat (limited to 'resolv')
0 files changed, 0 insertions, 0 deletions