reed kotler
2013-Jun-02 07:35 UTC
[LLVMdev] running test-suite in cross compilation/execution
Currently, if you are on Mips hardware running linux, you can basically just run test suite the same way you would run it on an x86 box. You can just do a "make report TEST=simple" for example. We also run it on an x86 box, generating MIPS code and then use either qemu as a simulator or connect to a mips linux box to just execute the tests. To do this cross compilation and testing, we have made our own TEST.xxx... scripts that are heavily customized. We have made other modifications to various files in test-suite. I'm not sure the total extent but it takes some work each time we resynch it all to the tip of tree. I want to push all of this into the LLVM trunk in some intelligent way so that it's consistent with what is already there and so that people that are outside of Mips can just check out an LLVM/Clang tree and build the compiler and run test-suite. Is Apple already doing this for compiling test-suite on x86 for ARM/IOS and then running it on an iphone or ipad? If so, how is this setup up. I.e. make TEST=.................. ????? What is the intention here? To me, no files should need to be customized as long as the functionality matches one the ones already in test-suite. If we do need to put back target specific TEST.xxx files, then maybe there should be target subdirectories for those. Tia. Reed
Reed Kotler
2013-Jun-02 08:32 UTC
[LLVMdev] running test-suite in cross compilation/execution
It seems like you would to run gcc and llvm/clang as separate steps (if you are not comparing with reference files) when in cross mode. Otherwise you will have a train wreck with conflicting options because the basic compiler target is built into gcc compilers and is not for clang unless host==target. On 06/02/2013 12:35 AM, reed kotler wrote:> Currently, if you are on Mips hardware running linux, you can basically > just run test suite the same way you would run it on an x86 box. > > You can just do a "make report TEST=simple" for example. > > We also run it on an x86 box, generating MIPS code and then use either > qemu as a simulator or connect to a mips linux box to just execute the > tests. > > To do this cross compilation and testing, we have made our own > TEST.xxx... scripts that are heavily customized. We have made other > modifications to various files in test-suite. I'm not sure the total > extent but it takes some work each time we resynch it all to the tip of > tree. > > I want to push all of this into the LLVM trunk in some intelligent way > so that it's consistent with what is already there and so that people > that are outside of Mips can just check out an LLVM/Clang tree and build > the compiler and run test-suite. > > Is Apple already doing this for compiling test-suite on x86 for ARM/IOS > and then running it on an iphone or ipad? > > If so, how is this setup up. I.e. > make TEST=.................. > > ????? > > What is the intention here? > > To me, no files should need to be customized as long as the > functionality matches one the ones already in test-suite. > > If we do need to put back target specific TEST.xxx files, then maybe > there should be target subdirectories for those. > > Tia. > > Reed