diff --git a/lib/cfa2/jscfa.js b/lib/cfa2/jscfa.js index 17fed8b..c8c2cba 100644 --- a/lib/cfa2/jscfa.js +++ b/lib/cfa2/jscfa.js @@ -2643,7 +2643,8 @@ function searchSummary(n, args, ts) { // Start from the end to find the elm that was pushed last for (var i = insouts.length - 1; i >= 0; i--) { summary = insouts[i]; - if (arrayeq(aveq, args, summary[0])) return summary.slice(-2); + // If no widening, turn avlt to aveq in the next line. + if (arrayeq(avlt, args, summary[0])) return summary.slice(-2); } return false; } @@ -2686,7 +2687,8 @@ function searchPending(n, args) { if (bucket[0].ts < timestamp) return len; // Start from the end to find the elm that was pushed last for (var i = len - 1; i >= 0; i--) - if (arrayeq(aveq, args, bucket[i].args)) return; + // If no widening, turn avlt to aveq in the next line. + if (arrayeq(avlt, args, bucket[i].args)) return; return 0; } diff --git a/lib/cfa2/sunspider/check-3d-raytrace.tags b/lib/cfa2/sunspider/check-3d-raytrace.tags index ce9399f..1b3cb82 100644 --- a/lib/cfa2/sunspider/check-3d-raytrace.tags +++ b/lib/cfa2/sunspider/check-3d-raytrace.tags @@ -7,7 +7,7 @@ createVector check-3d-raytrace.js /^function createVector(x,y,z) {$/;" f lineno:26 type:Array[number] function(number, number, number) sqrLengthVector check-3d-raytrace.js /^function sqrLengthVector(self) {$/;" f lineno:30 type:number function(any) lengthVector check-3d-raytrace.js /^function lengthVector(self) {$/;" f lineno:34 type:number function(Array[number]) -addVector check-3d-raytrace.js /^function addVector(self, v) {$/;" f lineno:38 type:Array[number] function(Array[number], ) +addVector check-3d-raytrace.js /^function addVector(self, v) {$/;" f lineno:38 type: function(, ) subVector check-3d-raytrace.js /^function subVector(self, v) {$/;" f lineno:45 type:Array[number] function(Array[number], Array[number]) scaleVector check-3d-raytrace.js /^function scaleVector(self, scale) {$/;" f lineno:52 type: function(, ) normaliseVector check-3d-raytrace.js /^function normaliseVector(self) {$/;" f lineno:59 type:Array[number] function(Array[number]) diff --git a/lib/cfa2/v8/v6/earley-boyer.tags b/lib/cfa2/v8/v6/earley-boyer.tags index 35dd353..a3f7449 100644 --- a/lib/cfa2/v8/v6/earley-boyer.tags +++ b/lib/cfa2/v8/v6/earley-boyer.tags @@ -122,12 +122,12 @@ sc_remq earley-boyer.js /^function sc_remq(o, l) {$/;" f lineno:815 type: function(any, any) sc_deleteBang earley-boyer.js /^function sc_deleteBang(o, l) {$/;" f lineno:864 type:null function(any, any) -sc_reverseAppendBang earley-boyer.js /^function sc_reverseAppendBang(l1, l2) {$/;" f lineno:884 type: function(, ) -sc_dualAppend earley-boyer.js /^function sc_dualAppend(l1, l2) {$/;" f lineno:895 type: function(, ) -sc_append earley-boyer.js /^function sc_append() {$/;" f lineno:903 type: function() +sc_reverseAppendBang earley-boyer.js /^function sc_reverseAppendBang(l1, l2) {$/;" f lineno:884 type: function(, ) +sc_dualAppend earley-boyer.js /^function sc_dualAppend(l1, l2) {$/;" f lineno:895 type: function(, ) +sc_append earley-boyer.js /^function sc_append() {$/;" f lineno:903 type: function() sc_dualAppendBang earley-boyer.js /^function sc_dualAppendBang(l1, l2) {$/;" f lineno:912 type:null function(null, any) sc_appendBang earley-boyer.js /^function sc_appendBang() {$/;" f lineno:922 type:null function() -sc_reverse earley-boyer.js /^function sc_reverse(l1) {$/;" f lineno:930 type: function() +sc_reverse earley-boyer.js /^function sc_reverse(l1) {$/;" f lineno:930 type: function() sc_reverseBang earley-boyer.js /^function sc_reverseBang(l) {$/;" f lineno:940 type:null function(null) sc_listTail earley-boyer.js /^function sc_listTail(l, k) {$/;" f lineno:945 type:any function(any, any) sc_listRef earley-boyer.js /^function sc_listRef(l, k) {$/;" f lineno:954 type:any function(any, any) @@ -202,7 +202,7 @@ sc_map earley-boyer.js /^function sc_map(proc, l1) {$/;" f lineno:1495 type: function(any, any) -sc_filterBang earley-boyer.js /^function sc_filterBang(proc, l1) {$/;" f lineno:1564 type: function(any, any) +sc_filterBang earley-boyer.js /^function sc_filterBang(proc, l1) {$/;" f lineno:1564 type: function(any, any) sc_filterMap1 earley-boyer.js /^function sc_filterMap1(proc, l1) {$/;" f lineno:1579 type: function(any, any) sc_filterMap2 earley-boyer.js /^function sc_filterMap2(proc, l1, l2) {$/;" f lineno:1588 type: function(any, any, any) sc_filterMap earley-boyer.js /^function sc_filterMap(proc, l1, l2, l3) {$/;" f lineno:1600 type: function(any, any, any, any) @@ -480,7 +480,7 @@ is_parsed earley-boyer.js /^ is_parsed = function(nt, i, j, s deriv_trees earley-boyer.js /^ deriv_trees = function(sc_conf_91, i, j, sc_enders_92, sc_steps_93, sc_names_94, sc_toks_95, sc_states_96, BgL_sc_nbzd2nts_97zd2) {$/;" f lineno:4248 type: function(, number, number, Array, Array, Array, Array, Array, number) sc_loop1_98 earley-boyer.js /^ return ((name = (sc_names_94[sc_conf_91])), ((name!== false)?((sc_conf_91, null) loop2 earley-boyer.js /^ loop2 = function(k, l2) {$/;" f lineno:4266 type:any function(any, any) -loop3 earley-boyer.js /^ loop3 = function(l3, l2) {$/;" f lineno:4280 type:any function(, sc_Pair) +loop3 earley-boyer.js /^ loop3 = function(l3, l2) {$/;" f lineno:4280 type:any function(any, sc_Pair) BgL_sc_derivzd2treesza2_47z70 earley-boyer.js /^ BgL_sc_derivzd2treesza2_47z70 = function(nt, i, j, sc_nts_101, sc_enders_102, sc_steps_103, sc_names_104, sc_toks_105, sc_states_106) {$/;" f lineno:4318 type: function(string, number, number, Array, Array, Array, Array, Array, Array) nb_deriv_trees earley-boyer.js /^ nb_deriv_trees = function(sc_conf_110, i, j, sc_enders_111, sc_steps_112, sc_toks_113, sc_states_114, BgL_sc_nbzd2nts_115zd2) {$/;" f lineno:4351 type:number function(number, any, any, any, any, any, any, any) sc_loop1_116 earley-boyer.js /^ return ((prev = (sc_conf_110-(1))), ((((tmp1124 = (sc_conf_110