Why can't CSE recognize const_int's in HIGH LO_SUM pair?

Richard Kenner kenner@vlsi1.ultra.nyu.edu
Sat Sep 8 17:21:00 GMT 2001


    If you ask Alpha to load 0x10001000, you'll get

	(set (reg) (const_int 0x10000000))
	(set (reg) (plus (reg) (const_int 0x1000))

    which is exactly what the machine code is doing.  No need for
    high/lo_sum, and by not using them, we expose the exact constant
    fragments to cse/combine/etc.

That's true for integers, but not symbolic constants.



More information about the Gcc mailing list