[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] Fix signedness of LL shift operators in libtcc1.c (gr
David A. Wheeler
Re: [Tinycc-devel] Fix signedness of LL shift operators in libtcc1.c (grischka-2005-09-25 case_10)
Thu, 03 May 2007 18:49:55 -0400 (EDT)
> Ah. Back to Ken Thompson's original "trusting trust" paper, "where's the
> source for this"...
Yep; that's a topic I'm familiar with :-). It's not even so much about trust,
as about bootstrapping in general. I know you've got a lot of experience in
> Hmmm... Ideally we'd want it to automatically use this code when tcc was
> compiling itself.
Actually, I don't think that's true; it depends on the user. If the user wants
the compilation to run as fast as possible, or wants the code to be as small as
possible, tcc self-compilation is NOT what you want to do. And I think many
people use tcc BECAUSE of its fast compilation and small size.
If you DO want tcc to be completely self-hosted, and thus don't care about the
performance hit, THEN you want this code.
> Is that when __TINYC__ is defined? In which case, an
> easier (or at least more logical) reproduction sequence would be:
> make install
Disagree. I don't want a test routine to FORCE installation somewhere; I want
to run tests BEFORE I install it :-). That would also make testing easy to get
wrong; I have dozens of tcc's running around, and while I'm testing tcc I make
sure that NO tcc is installed. That way I can be confident that what I _think_
I'm testing is what I'm actually testing. That's why I invoked tcc directly,
using "./tcc", in my comment - because that I way I don't mess up the installed
tcc while I'm testing tcc.
--- David A. Wheeler