aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSverker Eriksson <sverker@erlang.org>2013-02-25 19:20:22 +0100
committerSverker Eriksson <sverker@erlang.org>2013-02-25 19:20:51 +0100
commit29bfbfdde67e7a0d182aa791317e1d80fe8d0d5d (patch)
tree4b57f3ef687e584b6500fd65c957b8da940880bb
parent2ca1d65b89b8d77156dcce07e9d4c24b1e8ca534 (diff)
parent6907ed77452dcf409e0e3540cf7bd876e87b54b9 (diff)
downloadotp-29bfbfdde67e7a0d182aa791317e1d80fe8d0d5d.tar.gz
otp-29bfbfdde67e7a0d182aa791317e1d80fe8d0d5d.tar.bz2
otp-29bfbfdde67e7a0d182aa791317e1d80fe8d0d5d.zip
Merge branch 'kostis/hipe-icode-range-bug'
* kostis/hipe-icode-range-bug: Fix bug related to the handling of is_number/1 by the range analysis Clean up and homogenize text messages for options OTP-10897
-rw-r--r--lib/hipe/icode/hipe_icode_range.erl2
-rw-r--r--lib/hipe/main/hipe.erl14
2 files changed, 9 insertions, 7 deletions
diff --git a/lib/hipe/icode/hipe_icode_range.erl b/lib/hipe/icode/hipe_icode_range.erl
index c222e8a5d5..46c5a39f2c 100644
--- a/lib/hipe/icode/hipe_icode_range.erl
+++ b/lib/hipe/icode/hipe_icode_range.erl
@@ -784,6 +784,8 @@ analyse_type(Type, Info, Rewrite) ->
integer ->
TrueRange = inf(any_range(), OldVarRange),
FalseRange = inf(none_range(), OldVarRange);
+ number ->
+ TrueRange = FalseRange = OldVarRange;
_ ->
TrueRange = inf(none_range(), OldVarRange),
FalseRange = OldVarRange
diff --git a/lib/hipe/main/hipe.erl b/lib/hipe/main/hipe.erl
index b2789978a4..6e00b13292 100644
--- a/lib/hipe/main/hipe.erl
+++ b/lib/hipe/main/hipe.erl
@@ -1135,7 +1135,7 @@ option_text(debug) ->
option_text(icode_range) ->
"Performs integer range analysis on the Icode level";
option_text(icode_ssa_check) ->
- "Checks whether Icode is on SSA form or not\n";
+ "Checks whether Icode is on SSA form or not";
option_text(icode_ssa_copy_prop) ->
"Performs copy propagation on Icode SSA";
option_text(icode_ssa_const_prop) ->
@@ -1143,14 +1143,14 @@ option_text(icode_ssa_const_prop) ->
option_text(icode_ssa_struct_reuse) ->
"Factors out common tuple and list constructions on Icode SSA";
option_text(icode_type) ->
- "Performs type analysis on the Icode level" ++
+ "Performs type analysis on the Icode level\n" ++
"and then simplifies the code based on the results of this analysis";
option_text(load) ->
"Automatically load the produced native code into memory";
option_text(peephole) ->
"Enables peephole optimizations";
option_text(pmatch) ->
- "Enables pattern matching compilation when compiling from Core; " ++
+ "Enables pattern matching compilation when compiling from Core;\n" ++
"has no effect when compiling from BEAM bytecode";
option_text(pp_asm) ->
"Displays assembly listing with addresses and bytecode\n" ++
@@ -1197,11 +1197,11 @@ option_text(timeout) ->
" The limit must be a non-negative integer or the atom 'infinity'.\n" ++
" The current default limit is 15 minutes (900000 ms).";
option_text(use_indexing) ->
- "Use indexing for multiple-choice branch selection.";
+ "Use indexing for multiple-choice branch selection";
option_text(use_callgraph) ->
- "Compile the functions in a module according to a reversed topological " ++
- "sorted order to gain more information when using a persistent lookup " ++
- "table for storing intra-modular type information.";
+ "Compile the functions in a module according to a reversed topological\n" ++
+ "sorted order to gain more information when using a persistent lookup\n" ++
+ "table for storing intra-modular type information";
option_text(verbose) ->
"Output information about what is being done";
option_text(Opt) when is_atom(Opt) ->