]> gitweb.factorcode.org Git - factor.git/log
factor.git
14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Samuel Tardieu [Sat, 1 Aug 2009 16:28:20 +0000 (18:28 +0200)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agocompiler.cfg.stacks: kill set now includes all locations eliminated as a result of...
Slava Pestov [Sat, 1 Aug 2009 11:12:43 +0000 (06:12 -0500)]
compiler.cfg.stacks: kill set now includes all locations eliminated as a result of stack height decrease; reduces number of ##replace instructions generated by 2%

14 years agoclasses.tuple.change-tracking: fix using line in tests
Slava Pestov [Sat, 1 Aug 2009 06:25:13 +0000 (01:25 -0500)]
classes.tuple.change-tracking: fix using line in tests

14 years agocpu.ppc: put spill slots and GC roots in stack frame where subroutine calls can't...
Slava Pestov [Sat, 1 Aug 2009 04:47:07 +0000 (23:47 -0500)]
cpu.ppc: put spill slots and GC roots in stack frame where subroutine calls can't clobber them

14 years agoimage.cpp: don't try to make code heap bigger than p->code_size since on PPC this...
Slava Pestov [Sat, 1 Aug 2009 04:23:29 +0000 (23:23 -0500)]
image.cpp: don't try to make code heap bigger than p->code_size since on PPC this will cause crashes if the image has a code heap of exactly 32Mb

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Slava Pestov [Sat, 1 Aug 2009 03:33:24 +0000 (22:33 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agocompiler: Oops, typos in unit tests
Slava Pestov [Sat, 1 Aug 2009 03:33:02 +0000 (22:33 -0500)]
compiler: Oops, typos in unit tests

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Joe Groff [Sat, 1 Aug 2009 03:32:57 +0000 (22:32 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agochange-tracking-tuple class. subclasses will have a "changed?" slot that gets set...
Joe Groff [Sat, 1 Aug 2009 02:48:17 +0000 (21:48 -0500)]
change-tracking-tuple class. subclasses will have a "changed?" slot that gets set to true when any slot is modified

14 years agoalien.marshall.syntax: add C-INCLUDE: <stdlib.h> to please OpenBSD x86-64
Slava Pestov [Sat, 1 Aug 2009 00:54:11 +0000 (19:54 -0500)]
alien.marshall.syntax: add C-INCLUDE: <stdlib.h> to please OpenBSD x86-64

14 years agoalien.libraries: add-library should now reload the library properly, instead of just...
Slava Pestov [Sat, 1 Aug 2009 00:46:18 +0000 (19:46 -0500)]
alien.libraries: add-library should now reload the library properly, instead of just leaking DLL handles

14 years agocompiler.cfg.ssa.destruction: fix bug in renaming triggered by sequence-parser:take...
Slava Pestov [Fri, 31 Jul 2009 23:34:15 +0000 (18:34 -0500)]
compiler.cfg.ssa.destruction: fix bug in renaming triggered by sequence-parser:take-sequence

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Slava Pestov [Fri, 31 Jul 2009 22:59:00 +0000 (17:59 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agocpu.ppc: fix small typos
Slava Pestov [Fri, 31 Jul 2009 22:57:15 +0000 (17:57 -0500)]
cpu.ppc: fix small typos

14 years agofix using list on win64
Doug Coleman [Fri, 31 Jul 2009 21:27:18 +0000 (16:27 -0500)]
fix using list on win64

14 years agofix some lousy docs in gpu.textures
Joe Groff [Fri, 31 Jul 2009 20:34:29 +0000 (15:34 -0500)]
fix some lousy docs in gpu.textures

14 years agoREADME.txt: minor updates suggested by mnestic
Slava Pestov [Fri, 31 Jul 2009 04:20:38 +0000 (23:20 -0500)]
README.txt: minor updates suggested by mnestic

14 years agocpu.ppc: Updating PowerPC backend for codegen changes over the last two months: new...
Slava Pestov [Fri, 31 Jul 2009 02:44:22 +0000 (21:44 -0500)]
cpu.ppc: Updating PowerPC backend for codegen changes over the last two months: new shift intrinsics added, fixnum overflow intrinsics are now treated like conditionals, GC checks are more complex and have a different API

14 years agoMove a bunch of GC check generation logic to platform-independent side
Slava Pestov [Fri, 31 Jul 2009 02:28:27 +0000 (21:28 -0500)]
Move a bunch of GC check generation logic to platform-independent side

14 years agoPassing -profile-compiler switch to bootstrap collects timing information from optimi...
Slava Pestov [Fri, 31 Jul 2009 02:27:52 +0000 (21:27 -0500)]
Passing -profile-compiler switch to bootstrap collects timing information from optimizer passes

14 years agoadd file-stem word to io.pathnames as the counterpart to file-extension. write docs...
Joe Groff [Fri, 31 Jul 2009 01:58:32 +0000 (20:58 -0500)]
add file-stem word to io.pathnames as the counterpart to file-extension. write docs for both

14 years agono need to call set-gpu-state* directly
Joe Groff [Fri, 31 Jul 2009 01:57:22 +0000 (20:57 -0500)]
no need to call set-gpu-state* directly

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Slava Pestov [Fri, 31 Jul 2009 00:11:02 +0000 (19:11 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Joe Groff [Thu, 30 Jul 2009 16:05:36 +0000 (11:05 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agoadd additional SSE2 packed integer operations
Joe Groff [Thu, 30 Jul 2009 16:05:12 +0000 (11:05 -0500)]
add additional SSE2 packed integer operations

14 years agohyphens>underscores in VERTEX-FORMAT for consistency with UNIFORM-TUPLE
Joe Groff [Thu, 30 Jul 2009 15:58:34 +0000 (10:58 -0500)]
hyphens>underscores in VERTEX-FORMAT for consistency with UNIFORM-TUPLE

14 years agobenchmark.pidigits: reduce parameter to speed up CI runs
Slava Pestov [Thu, 30 Jul 2009 14:24:41 +0000 (09:24 -0500)]
benchmark.pidigits: reduce parameter to speed up CI runs

14 years agocompiler.cfg: Get inline GC checks working again, using a dataflow analysis to comput...
Slava Pestov [Thu, 30 Jul 2009 14:19:44 +0000 (09:19 -0500)]
compiler.cfg: Get inline GC checks working again, using a dataflow analysis to compute uninitialized stack locations in compiler.cfg.stacks.uninitialized. Re-enable intrinsics which use inline allocation

14 years agoOopsie
Slava Pestov [Thu, 30 Jul 2009 13:27:52 +0000 (08:27 -0500)]
Oopsie

14 years agocpu.x86: Fix shuffle bug. Shuffling bugs occurring in code that runs before optimizer...
Slava Pestov [Thu, 30 Jul 2009 10:12:40 +0000 (05:12 -0500)]
cpu.x86: Fix shuffle bug. Shuffling bugs occurring in code that runs before optimizer/stack checker is online are only caught at runtime during bootstrap, what a pain

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Samuel Tardieu [Thu, 30 Jul 2009 10:09:31 +0000 (12:09 +0200)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agocpu.x86: fix a bug in small-register logic on 32-bit. Also, on 32-bit, we don't need...
Slava Pestov [Thu, 30 Jul 2009 10:04:46 +0000 (05:04 -0500)]
cpu.x86: fix a bug in small-register logic on 32-bit. Also, on 32-bit, we don't need to do any special register shuffling to work with 16-bit operands since all registers have 16-bit variants. So now only 8-bit operands on x86-32 require special treatment

14 years agobootstrap.compiler: compile a few more words early, for a big bootstrap speed boost
Slava Pestov [Thu, 30 Jul 2009 07:45:29 +0000 (02:45 -0500)]
bootstrap.compiler: compile a few more words early, for a big bootstrap speed boost

14 years agocpu.x86: update non-optimizing compiler backends for assembler vocab split
Slava Pestov [Thu, 30 Jul 2009 07:22:37 +0000 (02:22 -0500)]
cpu.x86: update non-optimizing compiler backends for assembler vocab split

14 years agocompiler.cfg.linear-scan: fix case where a register can be made available for only...
Slava Pestov [Thu, 30 Jul 2009 07:13:30 +0000 (02:13 -0500)]
compiler.cfg.linear-scan: fix case where a register can be made available for only a part of a live interval's lifetime, but there are no more usages after the split location. This case never came up until global stack analysis, at which point it started to be exercised on x86-32

14 years agocompiler.cfg.ssa.destruction: fix
Slava Pestov [Thu, 30 Jul 2009 04:43:00 +0000 (23:43 -0500)]
compiler.cfg.ssa.destruction: fix

14 years agocompiler.cfg.ssa.destruction: tweak in preparation for landing Dan's new SSA liveness...
Slava Pestov [Thu, 30 Jul 2009 04:35:51 +0000 (23:35 -0500)]
compiler.cfg.ssa.destruction: tweak in preparation for landing Dan's new SSA liveness analysis

14 years agocpu.x86.assembler: fix extended 8-bit registers (DIL, SIL, SPL, BPL)
Slava Pestov [Thu, 30 Jul 2009 03:32:22 +0000 (22:32 -0500)]
cpu.x86.assembler: fix extended 8-bit registers (DIL, SIL, SPL, BPL)

14 years agocpu.x86: use full set of 8-bit, 16-bit and 32-bit registers on x86-64 to avoid clumsy...
Slava Pestov [Thu, 30 Jul 2009 02:56:37 +0000 (21:56 -0500)]
cpu.x86: use full set of 8-bit, 16-bit and 32-bit registers on x86-64 to avoid clumsy save/restore logic

14 years agocpu.x86.assembler: move operands to operands sub-vocabulary, clean up small-reg-...
Slava Pestov [Thu, 30 Jul 2009 02:44:08 +0000 (21:44 -0500)]
cpu.x86.assembler: move operands to operands sub-vocabulary, clean up small-reg-* code in compiler backend

14 years agoremove some leftover debug code from bunny shader
Joe Groff [Thu, 30 Jul 2009 01:06:28 +0000 (20:06 -0500)]
remove some leftover debug code from bunny shader

14 years agodebug.cpp: fep now prints return addresses in call stack dump
Slava Pestov [Thu, 30 Jul 2009 00:28:58 +0000 (19:28 -0500)]
debug.cpp: fep now prints return addresses in call stack dump

14 years agoMerge branch 'irc' of git://tiodante.com/git/factor
Slava Pestov [Thu, 30 Jul 2009 00:27:41 +0000 (19:27 -0500)]
Merge branch 'irc' of git://tiodante.com/git/factor

14 years agoMerge branch 'xml-fix' of git://tiodante.com/git/factor
Slava Pestov [Thu, 30 Jul 2009 00:27:13 +0000 (19:27 -0500)]
Merge branch 'xml-fix' of git://tiodante.com/git/factor

14 years agoMerge branch 'emacs' of http://git.hacks-galore.org/jao/factor
Slava Pestov [Wed, 29 Jul 2009 23:18:11 +0000 (18:18 -0500)]
Merge branch 'emacs' of http://git.hacks-galore.org/jao/factor

14 years agocompiler.cfg.linear-scan: more test fixes
Slava Pestov [Wed, 29 Jul 2009 12:04:52 +0000 (07:04 -0500)]
compiler.cfg.linear-scan: more test fixes

14 years agocompiler.cfg: remove 'regs' slot from instruction tuples now that register allocation...
Slava Pestov [Wed, 29 Jul 2009 11:50:46 +0000 (06:50 -0500)]
compiler.cfg: remove 'regs' slot from instruction tuples now that register allocation doesn't use it anymore

14 years agocompiler.cfg.linear-scan.resolve: fix unit tests to not depend on hashing
Slava Pestov [Wed, 29 Jul 2009 11:48:01 +0000 (06:48 -0500)]
compiler.cfg.linear-scan.resolve: fix unit tests to not depend on hashing

14 years agobit-arrays: fix resize method regression after recent equal? method optimization
Slava Pestov [Wed, 29 Jul 2009 11:47:50 +0000 (06:47 -0500)]
bit-arrays: fix resize method regression after recent equal? method optimization

14 years agocompiler: fix test
Slava Pestov [Wed, 29 Jul 2009 11:39:54 +0000 (06:39 -0500)]
compiler: fix test

14 years agocompiler.cfg.linear-scan.assignment: modifies instructions in place instead of storin...
Slava Pestov [Wed, 29 Jul 2009 11:36:14 +0000 (06:36 -0500)]
compiler.cfg.linear-scan.assignment: modifies instructions in place instead of storing a registers assoc for further compile-time performance improvement

14 years agocompiler.cfg.linear-scan.assignment: more efficient data structures
Slava Pestov [Wed, 29 Jul 2009 11:12:33 +0000 (06:12 -0500)]
compiler.cfg.linear-scan.assignment: more efficient data structures

14 years agocompiler.cfg.linearization: fix bootstrap
Slava Pestov [Wed, 29 Jul 2009 03:52:07 +0000 (22:52 -0500)]
compiler.cfg.linearization: fix bootstrap

14 years agosequences: add declaration so that array-flip compiles better
Slava Pestov [Wed, 29 Jul 2009 02:33:12 +0000 (21:33 -0500)]
sequences: add declaration so that array-flip compiles better

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Slava Pestov [Wed, 29 Jul 2009 02:31:25 +0000 (21:31 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agocompiler.cfg.linearization: rotate loops. 2x speedup with empty times loop, 1.5x...
Slava Pestov [Wed, 29 Jul 2009 02:31:08 +0000 (21:31 -0500)]
compiler.cfg.linearization: rotate loops. 2x speedup with empty times loop, 1.5x speedup on benchmark.dawes

14 years agoFUEL: Bug fix: parenthesis matching when ( belongs to a word.
Jose A. Ortega Ruiz [Tue, 28 Jul 2009 22:29:43 +0000 (00:29 +0200)]
FUEL: Bug fix: parenthesis matching when ( belongs to a word.

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Joe Groff [Tue, 28 Jul 2009 19:38:25 +0000 (14:38 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agoi just cut and pasted
Joe Groff [Tue, 28 Jul 2009 19:38:10 +0000 (14:38 -0500)]
i just cut and pasted

14 years agocompiler.cfg.ssa.destruction: rename coalesce word to destruct-ssa
Slava Pestov [Tue, 28 Jul 2009 17:56:33 +0000 (12:56 -0500)]
compiler.cfg.ssa.destruction: rename coalesce word to destruct-ssa

14 years agoMerge branch 'dcn'
Slava Pestov [Tue, 28 Jul 2009 17:37:45 +0000 (12:37 -0500)]
Merge branch 'dcn'

14 years agocompiler.cfg: Minor optimization. Instructions can now only ever produce a single...
Slava Pestov [Tue, 28 Jul 2009 17:29:07 +0000 (12:29 -0500)]
compiler.cfg: Minor optimization. Instructions can now only ever produce a single value; this eliminates 1array constructions and some iterations

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Joe Groff [Tue, 28 Jul 2009 17:20:16 +0000 (12:20 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agoSSE4 opcodes for x86 assembler
Joe Groff [Tue, 28 Jul 2009 17:19:37 +0000 (12:19 -0500)]
SSE4 opcodes for x86 assembler

14 years agocompiler.cfg.ssa.construction: use the optimization from the pruned-SSA paper to...
Slava Pestov [Tue, 28 Jul 2009 16:52:42 +0000 (11:52 -0500)]
compiler.cfg.ssa.construction: use the optimization from the pruned-SSA paper to minimize stack pushing and popping

14 years agoMove set-last from circular.private to sequences
Slava Pestov [Tue, 28 Jul 2009 16:51:47 +0000 (11:51 -0500)]
Move set-last from circular.private to sequences

14 years agoMerge branch 'master' into dcn
Slava Pestov [Tue, 28 Jul 2009 16:20:43 +0000 (11:20 -0500)]
Merge branch 'master' into dcn

14 years agoMove Joe's HEX{ syntax to byte-arrays.hex in basis
Slava Pestov [Tue, 28 Jul 2009 16:20:28 +0000 (11:20 -0500)]
Move Joe's HEX{ syntax to byte-arrays.hex in basis

14 years agocompiler.cfg.graphviz: add render-dom word
Slava Pestov [Tue, 28 Jul 2009 16:16:32 +0000 (11:16 -0500)]
compiler.cfg.graphviz: add render-dom word

14 years agoIN: fix for compiler test
Slava Pestov [Tue, 28 Jul 2009 16:16:21 +0000 (11:16 -0500)]
IN: fix for compiler test

14 years agocompiler.cfg.ssa.construction: Use TDMSC algorithm to compute Phi placement
Slava Pestov [Tue, 28 Jul 2009 16:16:10 +0000 (11:16 -0500)]
compiler.cfg.ssa.construction: Use TDMSC algorithm to compute Phi placement

14 years agoFaster bit-array equality, add bit-set-subset? word
Slava Pestov [Tue, 28 Jul 2009 16:14:57 +0000 (11:14 -0500)]
Faster bit-array equality, add bit-set-subset? word

14 years agocompiler.cfg: Rename ssa to ssa.construction, coalescing to ssa.destruction
Slava Pestov [Tue, 28 Jul 2009 14:34:08 +0000 (09:34 -0500)]
compiler.cfg: Rename ssa to ssa.construction, coalescing to ssa.destruction

14 years agocompiler.cfg: Fix some unit tests
Slava Pestov [Tue, 28 Jul 2009 13:56:14 +0000 (08:56 -0500)]
compiler.cfg: Fix some unit tests

14 years agocompiler.cfg.branch-splitting: re-enable with a better heuristic
Slava Pestov [Tue, 28 Jul 2009 13:48:05 +0000 (08:48 -0500)]
compiler.cfg.branch-splitting: re-enable with a better heuristic

14 years agocompiler.cfg.utilities: add loop-entry? word
Slava Pestov [Tue, 28 Jul 2009 13:47:50 +0000 (08:47 -0500)]
compiler.cfg.utilities: add loop-entry? word

14 years agocompiler.cfg.linear-scan: fix resolve pass
Slava Pestov [Tue, 28 Jul 2009 13:47:35 +0000 (08:47 -0500)]
compiler.cfg.linear-scan: fix resolve pass

14 years agocompiler.cfg.coalescing: cleanups
Slava Pestov [Tue, 28 Jul 2009 13:47:03 +0000 (08:47 -0500)]
compiler.cfg.coalescing: cleanups

14 years agoRevert "compiler.cfg.coalescing: some cleanups"
Slava Pestov [Tue, 28 Jul 2009 12:51:44 +0000 (07:51 -0500)]
Revert "compiler.cfg.coalescing: some cleanups"

This reverts commit e5834c4ba7bb52c720d9bd90b4a15f34274aee1b.

14 years agocompiler.cfg.linear-scan.resolve: unit tests
Slava Pestov [Tue, 28 Jul 2009 12:41:41 +0000 (07:41 -0500)]
compiler.cfg.linear-scan.resolve: unit tests

14 years agocompiler.cfg.utilities: fix stack effect declaration
Slava Pestov [Tue, 28 Jul 2009 12:40:09 +0000 (07:40 -0500)]
compiler.cfg.utilities: fix stack effect declaration

14 years agocompiler.cfg.linear-scan: use compiler.cfg.parallel-copy in resolve pass
Slava Pestov [Tue, 28 Jul 2009 12:39:46 +0000 (07:39 -0500)]
compiler.cfg.linear-scan: use compiler.cfg.parallel-copy in resolve pass

14 years agocompiler.cfg.coalescing: some cleanups
Slava Pestov [Tue, 28 Jul 2009 12:37:50 +0000 (07:37 -0500)]
compiler.cfg.coalescing: some cleanups

14 years agocompiler.cfg.utilities: fix load error
Slava Pestov [Tue, 28 Jul 2009 11:51:03 +0000 (06:51 -0500)]
compiler.cfg.utilities: fix load error

14 years agoclasses.algebra: stack effect fix
Slava Pestov [Tue, 28 Jul 2009 11:49:09 +0000 (06:49 -0500)]
classes.algebra: stack effect fix

14 years agotools.annotations: doc addition
Slava Pestov [Tue, 28 Jul 2009 11:49:03 +0000 (06:49 -0500)]
tools.annotations: doc addition

14 years agocompiler.cfg.coalescing: Only run if CFG has ##phi nodes, fix interference for case...
Slava Pestov [Tue, 28 Jul 2009 11:48:20 +0000 (06:48 -0500)]
compiler.cfg.coalescing: Only run if CFG has ##phi nodes, fix interference for case where value is not used in a block and is not live-in, forgot to run liveness analysis first

14 years agoAdd some compiler tests
Slava Pestov [Tue, 28 Jul 2009 11:45:31 +0000 (06:45 -0500)]
Add some compiler tests

14 years agocompiler.cfg.liveness: fix liveness computation in case where instruction uses a...
Slava Pestov [Tue, 28 Jul 2009 11:45:02 +0000 (06:45 -0500)]
compiler.cfg.liveness: fix liveness computation in case where instruction uses a register it defines

14 years agocompiler.cfg.graphviz: A utility for rendering CFGs with graphviz
Slava Pestov [Tue, 28 Jul 2009 11:41:29 +0000 (06:41 -0500)]
compiler.cfg.graphviz: A utility for rendering CFGs with graphviz

14 years agocompiler.cfg.critical-edges: reset RPO
Slava Pestov [Tue, 28 Jul 2009 06:04:13 +0000 (01:04 -0500)]
compiler.cfg.critical-edges: reset RPO

14 years agoSSE1–SSSE3 opcodes + branch hints for x86 assembler
Joe Groff [Tue, 28 Jul 2009 05:22:27 +0000 (00:22 -0500)]
SSE1–SSSE3 opcodes + branch hints for x86 assembler

14 years agoAdd some tests that directly generate low level IR
Slava Pestov [Tue, 28 Jul 2009 03:29:33 +0000 (22:29 -0500)]
Add some tests that directly generate low level IR

14 years agocompiler.cfg.coalescing: precompute live intervals, add support for instructions...
Slava Pestov [Tue, 28 Jul 2009 03:29:17 +0000 (22:29 -0500)]
compiler.cfg.coalescing: precompute live intervals, add support for instructions where output cannot equal an input, split critical edges

14 years agocompiler.cfg.two-operand: make it work in more cases
Slava Pestov [Tue, 28 Jul 2009 03:28:29 +0000 (22:28 -0500)]
compiler.cfg.two-operand: make it work in more cases

14 years agocompiler.cfg.debugger: reset vreg counters
Slava Pestov [Tue, 28 Jul 2009 03:28:13 +0000 (22:28 -0500)]
compiler.cfg.debugger: reset vreg counters

14 years agocpu.x86: compile a load of zero, and adds, subs where dst = src1 more efficiently
Slava Pestov [Tue, 28 Jul 2009 03:27:54 +0000 (22:27 -0500)]
cpu.x86: compile a load of zero, and adds, subs where dst = src1 more efficiently

14 years agodisassemble method for byte-arrays. HEX{ abcd } syntax for byte-arrays
Joe Groff [Tue, 28 Jul 2009 03:14:26 +0000 (22:14 -0500)]
disassemble method for byte-arrays. HEX{ abcd } syntax for byte-arrays

14 years agoDebugging compiler.cfg.coalescing
Slava Pestov [Tue, 28 Jul 2009 00:24:13 +0000 (19:24 -0500)]
Debugging compiler.cfg.coalescing

14 years agoMerge branch 'dcn' of git://factorcode.org/git/factor into dcn
Slava Pestov [Mon, 27 Jul 2009 21:57:13 +0000 (16:57 -0500)]
Merge branch 'dcn' of git://factorcode.org/git/factor into dcn