projects
/
platform
/
upstream
/
gcc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
ab91c10
)
tree-optimization/105368 - avoid overflow in powi_cost
author
Richard Biener
<rguenther@suse.de>
Mon, 25 Apr 2022 08:55:21 +0000
(10:55 +0200)
committer
Richard Biener
<rguenther@suse.de>
Mon, 25 Apr 2022 09:46:59 +0000
(11:46 +0200)
The following avoids undefined signed overflow when computing
the absolute of the exponent in powi_cost.
2022-04-25 Richard Biener <rguenther@suse.de>
PR tree-optimization/105368
* tree-ssa-math-opts.cc (powi_cost): Use absu_hwi.
gcc/tree-ssa-math-opts.cc
patch
|
blob
|
history
diff --git
a/gcc/tree-ssa-math-opts.cc
b/gcc/tree-ssa-math-opts.cc
index
102b7a2
..
7555793
100644
(file)
--- a/
gcc/tree-ssa-math-opts.cc
+++ b/
gcc/tree-ssa-math-opts.cc
@@
-1462,7
+1462,7
@@
powi_cost (HOST_WIDE_INT n)
return 0;
/* Ignore the reciprocal when calculating the cost. */
- val =
(n < 0) ? -n : n
;
+ val =
absu_hwi (n)
;
/* Initialize the exponent cache. */
memset (cache, 0, POWI_TABLE_SIZE * sizeof (bool));