Mercurial > hg > truffle
diff src/share/vm/opto/mulnode.hpp @ 145:f3de1255b035
6603011: RFE: Optimize long division
Summary: Transform long division by constant into multiply
Reviewed-by: never, kvn
author | rasbold |
---|---|
date | Wed, 07 May 2008 08:06:46 -0700 |
parents | a61af66fc99e |
children | d1605aabd0a1 |
line wrap: on
line diff
--- a/src/share/vm/opto/mulnode.hpp Tue Apr 29 19:45:22 2008 -0700 +++ b/src/share/vm/opto/mulnode.hpp Wed May 07 08:06:46 2008 -0700 @@ -133,6 +133,16 @@ virtual uint ideal_reg() const { return Op_RegD; } }; +//-------------------------------MulHiLNode------------------------------------ +// Upper 64 bits of a 64 bit by 64 bit multiply +class MulHiLNode : public Node { +public: + MulHiLNode( Node *in1, Node *in2 ) : Node(0,in1,in2) {} + virtual int Opcode() const; + virtual const Type *Value( PhaseTransform *phase ) const; + const Type *bottom_type() const { return TypeLong::LONG; } + virtual uint ideal_reg() const { return Op_RegL; } +}; //------------------------------AndINode--------------------------------------- // Logically AND 2 integers. Included with the MUL nodes because it inherits