Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make generic CodeGen tests truly generic #1742

Closed
llvmbot opened this issue Apr 30, 2007 · 10 comments
Closed

Make generic CodeGen tests truly generic #1742

llvmbot opened this issue Apr 30, 2007 · 10 comments
Labels
bugzilla Issues migrated from bugzilla test-suite

Comments

@llvmbot
Copy link
Collaborator

llvmbot commented Apr 30, 2007

Bugzilla Link 1370
Resolution FIXED
Resolved on Mar 06, 2010 14:00
Version 1.0
OS All
Reporter LLVM Bugzilla Contributor

Extended Description

The DejaGnu tests will now avoid running tests for targets that are not
configured. Unfortunately, the Generic test suite contains test cases for
specific targets. This causes false FAIL in test/CodeGen/Generic because the
target specific options are not supported by llc. For example, the -march=ppc32
option is not supported in a test case if PowerPC is not configured to be built.

This should be rectified by moving or copying the tests that use the -march
option from Generic to the appropriate target directories.

@tlattner
Copy link
Contributor

*** This bug has been marked as a duplicate of 556 ***

@llvmbot
Copy link
Collaborator Author

llvmbot commented Apr 30, 2007

This is not a duplicate of 556. bug 556 had to do with the mechanism to detect
that only certain targets are built and to not execute target specific tests if
the target hasn't been built. That functionality was implemented a week ago so I
just closed 556.

This bug is about getting tests in the right directory, a wholly different problem.

@lattner
Copy link
Collaborator

lattner commented Apr 30, 2007

Why do we even care about this? People shouldn't be running tests unless they have everything built.
Obviously, if they don't, they can cause regressions in the stuff they don't test.

@llvmbot
Copy link
Collaborator Author

llvmbot commented Apr 30, 2007

You're missing the point, Chris.

Regardless of the targets they have specified as being built, if they run the
"Generic" tests, they should reasonably expect them to succeed. But, if those
"generic" tests require a specific target then they fail. Generic tests should
be generic, i.e. not target specific. This bug just asks that situation
actually be true.

BTW, I would expect that most users (not developers) would select to only
build the target for one machine. I certainly expect to do that with HLVM and
XPS. Its a waste to build targets that won't be used. It bloats executables
needlessly.

@lattner
Copy link
Collaborator

lattner commented Apr 30, 2007

BTW, I would expect that most users (not developers) would select to only
build the target for one machine. I certainly expect to do that with HLVM and
XPS. Its a waste to build targets that won't be used. It bloats executables
needlessly.

You're confusing many different issues here reid.

  1. Users vs developers. We care most about developers who want to test their stuff to ensure they are
    not causing regressions.
  2. "It bloats executables needlessly." only if you link them in.

There are tests that run multiple different targets. This is by design and not something that should
change.

-Chris

@llvmbot
Copy link
Collaborator Author

llvmbot commented Apr 30, 2007

You're confusing many different issues here reid.

There's no confusion.

  1. Users vs developers. We care most about developers who want to test
    their stuff to ensure they are not causing regressions.

So, package managers for operating system distros just "don't count" in your
view? Developers of language front ends who want to check for regressions, don't
count? C'mon, I don't believe you actually believe this ridiculous statement.
Users count too.

  1. "It bloats executables needlessly." only if you link them in.

Huh? The default is to link in every target configured to be built. The entire
POINT of this is that users are not likely to build all targets because they
don't want the bloat in the executables. That being the case, they will get
false regressions in the test suite, simply because their llc can't handle the
-march options that specify targets that they didn't build. This is not the
user's fault, it is the fault of the test suite which needs to make "generic"
tests truly target independent. All this bug is about is correcting this situation.

There are tests that run multiple different targets. This is by design and
not something that should change.

The only thing that is changing is that such tests are being replicated so that
they run on a per-target basis. This allows un-built targets to be excluded
instead of generating a false test failure because of -march= in
the test script. There's no loss of functionality here, just a rearrangement of
where the tests live to avoid false positives in the regression test regardless
of which targets were built.

@lattner
Copy link
Collaborator

lattner commented May 1, 2007

Fine, go for it.

@llvmbot
Copy link
Collaborator Author

llvmbot commented May 17, 2007

This has been implemented. Only target-independent test cases should go in
CodeGen. All test cases that had a -march= option have been moved or duplicated
into the target-specific subdirectories of test/CodeGen. From now on, please do
not use the -march option in the test/CodeGen/Generic directory.

@tlattner
Copy link
Contributor

mentioned in issue #928

@llvmbot llvmbot transferred this issue from llvm/llvm-bugzilla-archive Dec 3, 2021
troelsbjerre pushed a commit to troelsbjerre/llvm-project that referenced this issue Jan 10, 2024
…5747430d6bced66b2c5ada

[lldb] XFAIL TestMemoryHistory on Linux
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugzilla Issues migrated from bugzilla test-suite
Projects
None yet
Development

No branches or pull requests

3 participants