Fixed 64bit coordinate mode: numerical stability for DRC and LVS enabling. Main problem is representation of the 'world' box which does not transform properly when going through double.

This commit is contained in:
Matthias Koefferlein
2024-01-03 01:57:27 +01:00
parent 6c8d97adc9
commit 38de2d685f
5 changed files with 82 additions and 1 deletions
@@ -1335,8 +1335,13 @@ TEST(116)
const char *expected =
"set props {\n"
#if defined(HAVE_64BIT_COORD)
" {{S_MAX_SIGNED_INTEGER_WIDTH} {8}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {8}}\n"
#else
" {{S_MAX_SIGNED_INTEGER_WIDTH} {4}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {4}}\n"
#endif
" {{S_TOP_CELL} {$2}}\n"
" {{S_TOP_CELL} {$1}}\n"
" {17 {17value}}\n"
@@ -1439,8 +1444,13 @@ TEST(116)
const char *expected =
"set props {\n"
#if defined(HAVE_64BIT_COORD)
" {{S_MAX_SIGNED_INTEGER_WIDTH} {8}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {8}}\n"
#else
" {{S_MAX_SIGNED_INTEGER_WIDTH} {4}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {4}}\n"
#endif
" {{S_TOP_CELL} {$2}}\n"
" {{S_TOP_CELL} {$1}}\n"
" {{S_BOUNDING_BOXES_AVAILABLE} {2}}\n"
@@ -1499,8 +1509,13 @@ TEST(116)
const char *expected =
"set props {\n"
#if defined(HAVE_64BIT_COORD)
" {{S_MAX_SIGNED_INTEGER_WIDTH} {8}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {8}}\n"
#else
" {{S_MAX_SIGNED_INTEGER_WIDTH} {4}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {4}}\n"
#endif
" {{S_TOP_CELL} {$2}}\n"
" {{S_TOP_CELL} {$1}}\n"
" {{S_BOUNDING_BOXES_AVAILABLE} {2}}\n"
@@ -1561,8 +1576,13 @@ TEST(116)
const char *expected =
"set props {\n"
#if defined(HAVE_64BIT_COORD)
" {{S_MAX_SIGNED_INTEGER_WIDTH} {8}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {8}}\n"
#else
" {{S_MAX_SIGNED_INTEGER_WIDTH} {4}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {4}}\n"
#endif
" {{S_TOP_CELL} {$2}}\n"
" {{S_TOP_CELL} {$1}}\n"
" {{name} {117}}\n"
@@ -1617,8 +1637,13 @@ TEST(116)
const char *expected =
"set props {\n"
#if defined(HAVE_64BIT_COORD)
" {{S_MAX_SIGNED_INTEGER_WIDTH} {8}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {8}}\n"
#else
" {{S_MAX_SIGNED_INTEGER_WIDTH} {4}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {4}}\n"
#endif
" {{S_TOP_CELL} {$1}}\n"
" {17 {17value}}\n"
" {{name} {117}}\n"
@@ -1668,8 +1693,13 @@ TEST(116)
const char *expected =
"set props {\n"
#if defined(HAVE_64BIT_COORD)
" {{S_MAX_SIGNED_INTEGER_WIDTH} {8}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {8}}\n"
#else
" {{S_MAX_SIGNED_INTEGER_WIDTH} {4}}\n"
" {{S_MAX_UNSIGNED_INTEGER_WIDTH} {4}}\n"
#endif
" {{S_TOP_CELL} {$2}}\n"
" {17 {17value}}\n"
" {{name} {117}}\n"