Virtex-5 fails timing with ODDR operating in SAME_EDGE mode. The analyzer looks for the raising edge to falling edge instead of raising edge to raising edge
To work around this issue for the earlier versions, use the FROM-TO constraint.
This problem has been fixed in the latest 9.1i Service Pack available at:
The first service pack containing the fix is 9.1i Service Pack 3.