Commit Briefs

4873aa776d Neels Hofmeyr

fix myers divide: properly trigger division on single midpoints (neels/wip3)


119e506814 Neels Hofmeyr

add test012

test010 has a weird failure to find a good diff. This new test, when setting the permitted_state_size = 100, gives a shorter failure that test010, to allow easier debugging.



4c42e83522 Neels Hofmeyr

fix diff_algo_myers_divide

When forwards and backwards traversals meet, the endpoints of the mid-snake are not the two points in kd_forward and kd_backward, but rather the section that was slid (if any) of the current forward/backward traversal only. For example: o-o-o | | o A | \ o o \ M |\ o o-o-o | | | o o X \ o \ o \ o The backward traversal reached M from the bottom and slid upwards. The forward traversal already reached X, which is not a straight line from M anymore, so picking a mid-snake from M to X would yield a mistake. The correct mid-snake is between M and A. M is where the bottom traversal hit the diagonal that the forwards traversal has already passed, and A is what it reaches when sliding up identical lines.


223979a920 Neels Hofmeyr

debug: myers graph dump tweaks

In debug output: fix some indents, fix printing of max state size, in myers graph, limit x axis labels to 2 digits, print colored markers of current myers graph positions, also print myers-divide positions in myers graph.


0ea9501aa0 Neels Hofmeyr

.gitignore: gmon.out


165321bcd5 Neels Hofmeyr

comment tweak



2ddc199c9d Neels Hofmeyr

add test010, test011


c13c580d7b Neels Hofmeyr

Only print (unified) header in unified format.


47fd83fcd0 Neels Hofmeyr

Remove unused `arbitrary_info'.


75f5786123 Neels Hofmeyr

diff_divide_myers_forward(): less indent by 'continue'


cad38302aa Neels Hofmeyr

diff_output_unidiff(): less indent by 'continue'


6c0c3bc03a Neels Hofmeyr

Compat goo for gmake/glibc/Linux


4ba235e404 Neels Hofmeyr

Kill unused variables


f2aebda43f Neels Hofmeyr

Fix macro diff_atom_*idx return value types

The macros sometimes returned unsigned int (atoms.len) or long int ((ATOM) - head). Make that always unsigned int, with some range checks against negative values.


fbbf4c35d4 Neels Hofmeyr

diff.c: move two #include to the top


ba0331d907 Neels Hofmeyr

set myers fallback to myers_divide


29f5ff1dca Neels Hofmeyr

linux_Makefile: gprof




c620ba7f92 Neels Hofmeyr

lib/linux_Makefile: -O3


13b1527373 Neels Hofmeyr

debug: dump at most 42 lines


72057b7069 Neels Hofmeyr

debug: dont dump too large myers graphs


fbd55577b9 Neels Hofmeyr

dont escape tabs in text output