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