GCC with patches for OS216
Revision | 15c5f3f502ed01d2ba361e466a520b252979a75f (tree) |
---|---|
Zeit | 2018-04-17 02:23:40 |
Autor | Aldy Hernandez <aldyh@gcc....> |
Commiter | Aldy Hernandez |
One last tweak before we move onto the new world/branch.
From-SVN: r259404
@@ -308,11 +308,17 @@ builtin_memref::extend_offset_range (tree offset) | ||
308 | 308 | if (TREE_CODE (offset) == SSA_NAME) |
309 | 309 | { |
310 | 310 | wide_int min, max; |
311 | - if (get_range_info (offset, &min, &max)) | |
311 | + value_range_type rng = get_range_info_as_value_range (offset, &min, &max); | |
312 | + if (rng == VR_RANGE) | |
312 | 313 | { |
313 | 314 | offrange[0] += offset_int::from (min, SIGNED); |
314 | 315 | offrange[1] += offset_int::from (max, SIGNED); |
315 | 316 | } |
317 | + else if (rng == VR_ANTI_RANGE) | |
318 | + { | |
319 | + offrange[0] += offset_int::from (max + 1, SIGNED); | |
320 | + offrange[1] += offset_int::from (min - 1, SIGNED); | |
321 | + } | |
316 | 322 | else |
317 | 323 | { |
318 | 324 | gimple *stmt = SSA_NAME_DEF_STMT (offset); |