Shift limits

From: Paul Floyd <Paul_Floyd_at_.....>
Date: Wed Aug 29 2007 - 08:38:39 PDT
Hi

In the 2.2 LRM, section 4.1.10, no comment is made on the effect of a 
shift when the right operand is greater than the width of the left 
operand. In the ISO C standard, 1999, this is undefined (section 6.5.7, 
para 3; C is also undefined for a negative right operand whereas the 
Verilog-AMS LRM specifies that the right operand is treated as unsigned).

Just a couple of examples:

integer i, j;

i = 1;
j = i << 32;

Is j undefined (like C) or 0? Same question for 'j = i >> 32;'.

Regards
Paul Floyd
-- 
Dr. Paul Floyd
Mentor Graphics Corporation


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Aug 29 08:38:55 2007

This archive was generated by hypermail 2.1.8 : Wed Aug 29 2007 - 08:39:06 PDT