do we have docs/guidelines for testsuite/ dir layouts ? we seem to (inconsistently) use a lot of redundant layouts largely due to our use of dejagnu. dejagnu takes a tool-centric view of the world. this makes sense when you have a flat testsuite dir (e.g. if gas & binutils & ld & gdb all shared a testsuite/ dir), but i'm not sure it makes that much sense when they're all sep. i think dejagnu is the single reason for the layouts we have and it seems a bit unnecessary. when you set tool= in its site.exp, it will only search for dirs with prefixes under testsuite/. i.e. it applies the glob like testsuite/*/**. a quick survey of binutils/gdb/gcc dirs that have tests: * binutils / testsuite / binutils- / * gas / testsuite / gas / / * gdb / testsuite / gdb. / * gold / testsuite / * ld / testsuite / ld- / * libctf / testsuite / libctf- / * libiberty / testsuite / * sim / testsuite / sim / / * gcc / testsuite / . / * libatomic / testsuite / libatomic. / * libffi / testsuite / libffi. / * libgomp / testsuite / libgomp. / * libgo / testsuite / libgo. / * libitm / testsuite / libitm. / * libphobos / testsuite / libphobos. / * libstdc++-v3 / testsuite / libstdc++- / * libvtv / testsuite / libvtv. / the notable standouts are gold & libiberty. they don't use dejagnu while everyone else does. so i'll ignore them. libstdc++-v3 has additional test subdirs beyond the tool=libstdc++ prefix. not sure how that works exactly. so i'll ignore them. gcc is also a bit funky, but i guess that's what you get for such a large subdir. i don't think we want to use that as precedence :). for all the rest, you can see that we have three styles: ./ -/ // the odd thing is that it seems most projects don't actually set tool in their site.exp. libstdc++, gdb, and sim do. so i guess either the others ones used to, or they just adopted a similar naming convention at some point because others were ? i've just finished cleaning up the sim/testsuite/ tree. i'm left with sim/testsuite/sim//. i spend a lot of time in sim// and sim/testsuite/sim// comparing and trying to collapse common logic. the extra sim/ dir irks me ;). it ends up being easy to collapse by deleting 'set tool sim' from site.exp, then just doing: cd testsuite/ git mv sim/* ./ which leaves me with sim/testsuite//. based on the fact that no one seems to use dejagnu's tool setting anymore, and we don't seem to have general guidance, and every project is slightly different, changing sim to drop the "sim" tool prefix is fine. -mike