On 06/27/2012 05:00 PM, Eric Christopher wrote:> On Jun 19, 2012, at 5:24 PM, reed kotler<rkotler at mips.com> wrote: > >> Do the llvm nightly scripts "recurse" the compiler or just test that it >> can self host itself? >> > No idea what you mean here. Can you explain? > > -ericrecursing a compiler means this. clang/llvm source == src compile src using clang/llvm (which may have been built using gcc) -> clang/llvm' (prime) compile src using clang/llvm' -> clang/llvm'' verify that the binaries for clang/llvm' == binaries for clang/llvm'' A compiler can be self hosted (made using itself) by just producing clang/llvm' That is not as strong a test as recursing the compiler, even though you might run the full test suite using clang/llvm"
On Jun 27, 2012, at 10:48 PM, Reed Kotler <rkotler at mips.com> wrote:> On 06/27/2012 05:00 PM, Eric Christopher wrote: >> On Jun 19, 2012, at 5:24 PM, reed kotler<rkotler at mips.com> wrote: >> >>> Do the llvm nightly scripts "recurse" the compiler or just test that it >>> can self host itself? >>> >> No idea what you mean here. Can you explain? >> >> -eric > recursing a compiler means this. > > clang/llvm source == src > > compile src using clang/llvm (which may have been built using gcc) -> clang/llvm' (prime) > > compile src using clang/llvm' -> clang/llvm'' > > verify that the binaries for clang/llvm' == binaries for clang/llvm'' > > A compiler can be self hosted (made using itself) by just producing clang/llvm' > > That is not as strong a test as recursing the compiler, even though you might run the full > test suite using clang/llvm"So... what I said? This is usually called a "bootstrap" of the compiler with "verification". -eric
Okay. Cool. So do you bootrstrap and verify as part of the usual testing? Do the nightly scripts do this? Reed On 06/28/2012 11:08 AM, Eric Christopher wrote:> On Jun 27, 2012, at 10:48 PM, Reed Kotler<rkotler at mips.com> wrote: > >> On 06/27/2012 05:00 PM, Eric Christopher wrote: >>> On Jun 19, 2012, at 5:24 PM, reed kotler<rkotler at mips.com> wrote: >>> >>>> Do the llvm nightly scripts "recurse" the compiler or just test that it >>>> can self host itself? >>>> >>> No idea what you mean here. Can you explain? >>> >>> -eric >> recursing a compiler means this. >> >> clang/llvm source == src >> >> compile src using clang/llvm (which may have been built using gcc) -> clang/llvm' (prime) >> >> compile src using clang/llvm' -> clang/llvm'' >> >> verify that the binaries for clang/llvm' == binaries for clang/llvm'' >> >> A compiler can be self hosted (made using itself) by just producing clang/llvm' >> >> That is not as strong a test as recursing the compiler, even though you might run the full >> test suite using clang/llvm" > So... what I said? This is usually called a "bootstrap" of the compiler with "verification". > > -eric