wilson@carcoar.Stanford.EDU (Paul Wilson) (05/30/89)
I'm trying to figure out whether the optimization and code generation
phases of gcc could profitably be snarfed for a compiler for a symbolic
language like Lisp or Smalltalk.
a couple of questions:
1) does gcc propagate constants through bitfields? (e.g., if I store
a constant zero into the low two bits of a word, and then later extract
those bits and compare them, will that comparison be optimized away?)
2) is there a simple way of adding assertions to the RTL? (e.g., "I
promise that the low two bits of this register will contain zeroes
at this point in the code")
The point of the above would be to exploit run-time type representations
(tags) so that the optimizer could do implicit type-flow analysis as
data-flow analysis.
Any info or comments would be appreciated.
Thanks prematurely,
Paul
Paul R. Wilson
Human-Computer Interaction Laboratory lab ph.: (312) 996-6013
U. of Illin. at C. EECS Dept. (M/C 154) wilson@carcoar.stanford.edu
Box 4348 Chicago,IL 60680
Paul R. Wilson
Human-Computer Interaction Laboratory lab ph.: (312) 996-6013
U. of Ill. at Chi. EECS Dept. (M/C 154)
Box 4348 Chicago,IL 60680 wilson@carcoar.stanford.edu