]> gitweb.factorcode.org Git - factor.git/log
factor.git
13 years agoMerge branch 'master' into s3
Daniel Ehrenberg [Mon, 3 May 2010 22:19:28 +0000 (17:19 -0500)]
Merge branch 'master' into s3

Conflicts:

basis/compiler/cfg/optimizer/optimizer.factor

13 years agocompiler: new "binary literal area" at the end of a word's machine code stores consta...
Slava Pestov [Mon, 3 May 2010 21:23:03 +0000 (17:23 -0400)]
compiler: new "binary literal area" at the end of a word's machine code stores constant floats and SIMD vectors; this allows ##load-reference/##load-memory fusion to be performed on x86-64, with a RIP-relative address reaching the data; also simplifies VM since custom relocation types used by the previous 32-bit-only optimization are no longer needed

13 years agocompiler.cfg.representations: make sure that immediate operands fit
Slava Pestov [Mon, 3 May 2010 04:38:10 +0000 (00:38 -0400)]
compiler.cfg.representations: make sure that immediate operands fit

13 years agocompiler.cfg.value-numbering: fix unit test for 64-bit
Slava Pestov [Mon, 3 May 2010 00:38:02 +0000 (20:38 -0400)]
compiler.cfg.value-numbering: fix unit test for 64-bit

13 years agoio.launcher.unix: add timeout to a test
Slava Pestov [Mon, 3 May 2010 00:06:45 +0000 (20:06 -0400)]
io.launcher.unix: add timeout to a test

13 years agocompiler: remove flat machine representation and generate code directly from the CFG
Slava Pestov [Sun, 2 May 2010 22:48:41 +0000 (18:48 -0400)]
compiler: remove flat machine representation and generate code directly from the CFG

13 years agocompiler.cfg.debugger: add ssa. word to print IR before representation selection...
Slava Pestov [Sun, 2 May 2010 20:22:22 +0000 (16:22 -0400)]
compiler.cfg.debugger: add ssa. word to print IR before representation selection runs

13 years agocompiler.tree.propagation: fix both-fixnums? trick
Slava Pestov [Sun, 2 May 2010 20:22:08 +0000 (16:22 -0400)]
compiler.tree.propagation: fix both-fixnums? trick

13 years agoUpdating tests for recent compiler changes
Slava Pestov [Sun, 2 May 2010 20:21:56 +0000 (16:21 -0400)]
Updating tests for recent compiler changes

13 years agocompiler.cfg.linear-scan.assignment: spill slot representation logic was backwards...
Slava Pestov [Sun, 2 May 2010 06:40:19 +0000 (02:40 -0400)]
compiler.cfg.linear-scan.assignment: spill slot representation logic was backwards, just like Factor

13 years agocompiler.cfg: fuse ##load-integer/##load-reference into ##replace to form ##replace-imm
Slava Pestov [Sat, 1 May 2010 07:04:31 +0000 (03:04 -0400)]
compiler.cfg: fuse ##load-integer/##load-reference into ##replace to form ##replace-imm

13 years agocompiler: add ##load-vector instruction to avoid wasting a temporary register on...
Slava Pestov [Sat, 1 May 2010 01:33:42 +0000 (21:33 -0400)]
compiler: add ##load-vector instruction to avoid wasting a temporary register on x86-32

13 years agocpu.x86: use available type info to generate more efficient %box-displaced-alien...
Slava Pestov [Sat, 1 May 2010 00:14:17 +0000 (20:14 -0400)]
cpu.x86: use available type info to generate more efficient %box-displaced-alien where possible

13 years agocompiler.cfg.copy-prop: optimistic copy propagation
Slava Pestov [Fri, 30 Apr 2010 23:50:30 +0000 (19:50 -0400)]
compiler.cfg.copy-prop: optimistic copy propagation

13 years agocompiler.cfg: cleanup
Slava Pestov [Fri, 30 Apr 2010 22:55:20 +0000 (18:55 -0400)]
compiler.cfg: cleanup

13 years agocompiler.cfg: clean up ##phi literals in tests
Slava Pestov [Fri, 30 Apr 2010 22:40:34 +0000 (18:40 -0400)]
compiler.cfg: clean up ##phi literals in tests

13 years agocompiler.cfg.linear-scan: clean up spill slot assignment
Slava Pestov [Fri, 30 Apr 2010 22:19:56 +0000 (18:19 -0400)]
compiler.cfg.linear-scan: clean up spill slot assignment

13 years agocompiler.cfg.ssa.detruction: coalesce different representations in more cases
Slava Pestov [Fri, 30 Apr 2010 22:18:30 +0000 (18:18 -0400)]
compiler.cfg.ssa.detruction: coalesce different representations in more cases

13 years agocompiler.cfg.alias-analysis: write unit tests and fix redundant store elimination
Slava Pestov [Fri, 30 Apr 2010 22:17:52 +0000 (18:17 -0400)]
compiler.cfg.alias-analysis: write unit tests and fix redundant store elimination

13 years agocontinuations: keep original error when throwing wrapped errors as well, for easier...
Slava Pestov [Fri, 30 Apr 2010 09:33:34 +0000 (05:33 -0400)]
continuations: keep original error when throwing wrapped errors as well, for easier debugging of bootstrap failures

13 years agocompiler.cfg.debugger: clean up and make it more flexible
Slava Pestov [Fri, 30 Apr 2010 09:33:17 +0000 (05:33 -0400)]
compiler.cfg.debugger: clean up and make it more flexible

13 years agoRegister allocation now uses SSA properties to coalesce values with different represe...
Slava Pestov [Wed, 28 Apr 2010 09:03:12 +0000 (05:03 -0400)]
Register allocation now uses SSA properties to coalesce values with different representations

13 years agocompiler.cfg: remove unused 'reps' slot from compiler.cfg, and re-organize things...
Slava Pestov [Wed, 28 Apr 2010 08:47:38 +0000 (04:47 -0400)]
compiler.cfg: remove unused 'reps' slot from compiler.cfg, and re-organize things in preparation for SSA register allocation

13 years agocompiler.cfg.linear-scan: cleanups
Slava Pestov [Wed, 28 Apr 2010 07:35:46 +0000 (03:35 -0400)]
compiler.cfg.linear-scan: cleanups

13 years agoCode cleanups
Slava Pestov [Wed, 28 Apr 2010 06:53:08 +0000 (02:53 -0400)]
Code cleanups

13 years agocompiler.cfg.gc-checks: move phi instructions into GC check block, to ensure correct...
Slava Pestov [Wed, 28 Apr 2010 06:53:01 +0000 (02:53 -0400)]
compiler.cfg.gc-checks: move phi instructions into GC check block, to ensure correct behavior

13 years agoNew GC checks work in progress
Slava Pestov [Tue, 27 Apr 2010 14:51:00 +0000 (10:51 -0400)]
New GC checks work in progress

13 years agocpu.x86.assembler: small cleanups
Slava Pestov [Mon, 26 Apr 2010 20:38:02 +0000 (16:38 -0400)]
cpu.x86.assembler: small cleanups

13 years agocompiler.tree.propagation: fix tests
Slava Pestov [Mon, 26 Apr 2010 09:38:14 +0000 (05:38 -0400)]
compiler.tree.propagation: fix tests

13 years agocompiler.codegen: cleanup
Slava Pestov [Mon, 26 Apr 2010 09:37:57 +0000 (05:37 -0400)]
compiler.codegen: cleanup

13 years agocompiler.cfg.linear-scan.resolve: fix incorrect behavior when one physical register...
Slava Pestov [Mon, 26 Apr 2010 09:37:48 +0000 (05:37 -0400)]
compiler.cfg.linear-scan.resolve: fix incorrect behavior when one physical register is used with several representations in the same register class

13 years agocompiler.cfg.linear-scan: don't insert a _reload if the register is going to be overw...
Slava Pestov [Mon, 26 Apr 2010 04:53:00 +0000 (00:53 -0400)]
compiler.cfg.linear-scan: don't insert a _reload if the register is going to be overwritten anyway

13 years agostrings: move string-nth primitive out of the VM and into the library
Slava Pestov [Mon, 26 Apr 2010 00:19:50 +0000 (20:19 -0400)]
strings: move string-nth primitive out of the VM and into the library

13 years agocompiler.cfg.representations: simplify a little
Slava Pestov [Sun, 25 Apr 2010 20:07:08 +0000 (16:07 -0400)]
compiler.cfg.representations: simplify a little

13 years agocompiler.cfg.representations: add peephole optimizations for integer comparisons
Slava Pestov [Sun, 25 Apr 2010 09:30:38 +0000 (05:30 -0400)]
compiler.cfg.representations: add peephole optimizations for integer comparisons

13 years agocompiler.cfg.representations: fix various bugs
Slava Pestov [Sun, 25 Apr 2010 09:13:04 +0000 (05:13 -0400)]
compiler.cfg.representations: fix various bugs

13 years agocompiler.cfg.representations: add more peephole optimizations to reduce fixnum taggin...
Slava Pestov [Sun, 25 Apr 2010 00:05:52 +0000 (20:05 -0400)]
compiler.cfg.representations: add more peephole optimizations to reduce fixnum tagging and untagging overhead

13 years agocompiler.cfg.value-numbering: more cleanups
Slava Pestov [Sat, 24 Apr 2010 10:32:46 +0000 (06:32 -0400)]
compiler.cfg.value-numbering: more cleanups

13 years agocompiler.cfg.value-numbering: identify VNs with their representative vregs, eliminati...
Slava Pestov [Sat, 24 Apr 2010 10:15:41 +0000 (06:15 -0400)]
compiler.cfg.value-numbering: identify VNs with their representative vregs, eliminating the vn>vreg hash

13 years agocompiler.cfg.value-numbering: maintain a VN to instruction mapping. This eliminates...
Slava Pestov [Sat, 24 Apr 2010 10:06:16 +0000 (06:06 -0400)]
compiler.cfg.value-numbering: maintain a VN to instruction mapping. This eliminates all instances of expression inspection, allowing the auto-generated expression classes to be removed

13 years agocompiler.cfg.value-numbering: remove constant -vs- literal distinction
Slava Pestov [Sat, 24 Apr 2010 08:49:35 +0000 (04:49 -0400)]
compiler.cfg.value-numbering: remove constant -vs- literal distinction

13 years agocompiler.cfg.ssa.liveness: remove unused pass
Slava Pestov [Sat, 24 Apr 2010 07:08:17 +0000 (03:08 -0400)]
compiler.cfg.ssa.liveness: remove unused pass

13 years agocompiler.cfg.builder: fix unit tests
Slava Pestov [Sat, 24 Apr 2010 06:38:54 +0000 (02:38 -0400)]
compiler.cfg.builder: fix unit tests

13 years agocompiler.cfg.value-numbering: merge 'simplify' pass into 'rewrite'
Slava Pestov [Sat, 24 Apr 2010 06:38:43 +0000 (02:38 -0400)]
compiler.cfg.value-numbering: merge 'simplify' pass into 'rewrite'

13 years agocompiler.cfg: add ##load-memory and ##store-memory instructions implementing complex...
Slava Pestov [Sat, 24 Apr 2010 04:13:44 +0000 (00:13 -0400)]
compiler.cfg: add ##load-memory and ##store-memory instructions implementing complex addressing modes, and associated value numbering optimizations

13 years agocompiler.cfg.value-numbering: add slot addressing rewrite rule to eliminate a redunda...
Slava Pestov [Sat, 24 Apr 2010 00:52:59 +0000 (20:52 -0400)]
compiler.cfg.value-numbering: add slot addressing rewrite rule to eliminate a redundant ##add-imm from array-nth and set-array-nth

13 years agocompiler.cfg: more flexible addressing for ##slot and ##set-slot
Slava Pestov [Sat, 24 Apr 2010 00:20:06 +0000 (20:20 -0400)]
compiler.cfg: more flexible addressing for ##slot and ##set-slot

13 years agocpu.x86.assembler: support all addressing modes
Slava Pestov [Fri, 23 Apr 2010 23:04:03 +0000 (19:04 -0400)]
cpu.x86.assembler: support all addressing modes

13 years agocompiler.cfg: merge all alien accessors into ##load-memory-imm and ##store-memory-imm
Slava Pestov [Fri, 23 Apr 2010 22:42:09 +0000 (18:42 -0400)]
compiler.cfg: merge all alien accessors into ##load-memory-imm and ##store-memory-imm

13 years agobenchmark.yuv-to-rgb: use TYPED: instead of HINTS:
Slava Pestov [Fri, 23 Apr 2010 11:43:36 +0000 (07:43 -0400)]
benchmark.yuv-to-rgb: use TYPED: instead of HINTS:

13 years agocompiler.cfg: remove ##set-string-nth-fast instruction since it can be expressed...
Slava Pestov [Fri, 23 Apr 2010 10:48:58 +0000 (06:48 -0400)]
compiler.cfg: remove ##set-string-nth-fast instruction since it can be expressed just as efficiently using other instructions

13 years agocompiler.tests.low-level-ir: update for recent changes
Slava Pestov [Fri, 23 Apr 2010 08:25:40 +0000 (04:25 -0400)]
compiler.tests.low-level-ir: update for recent changes

13 years agocompiler.cfg.value-numbering: fix compile error
Slava Pestov [Fri, 23 Apr 2010 08:23:32 +0000 (04:23 -0400)]
compiler.cfg.value-numbering: fix compile error

13 years agocompiler.cfg.representations: peephole optimizations are used to simplify the case...
Slava Pestov [Fri, 23 Apr 2010 08:18:31 +0000 (04:18 -0400)]
compiler.cfg.representations: peephole optimizations are used to simplify the case where the input to a ##shl-imm or ##sar-imm needs to be untagged

13 years agocompiler.cfg.value-numbering: new optimizations; reassociation for shifts and redistr...
Slava Pestov [Fri, 23 Apr 2010 08:17:41 +0000 (04:17 -0400)]
compiler.cfg.value-numbering: new optimizations; reassociation for shifts and redistribution for shifts/multiplies over additions/subtractions

13 years agocompiler.cfg.instructions: more typos
Slava Pestov [Thu, 22 Apr 2010 22:02:56 +0000 (18:02 -0400)]
compiler.cfg.instructions: more typos

13 years agoDebugging untagged fixnums
Slava Pestov [Thu, 22 Apr 2010 08:21:23 +0000 (03:21 -0500)]
Debugging untagged fixnums

13 years agoUntagged fixnums work in progress
Slava Pestov [Wed, 21 Apr 2010 07:08:52 +0000 (02:08 -0500)]
Untagged fixnums work in progress

13 years agocompiler: Start using tagged-rep for stuff, and split up compiler.cfg.representations...
Slava Pestov [Mon, 19 Apr 2010 19:05:55 +0000 (14:05 -0500)]
compiler: Start using tagged-rep for stuff, and split up compiler.cfg.representations into several sub-vocabularies

13 years agotools.deploy.shaker: adjust fallback error handler message so it looks better in...
Joe Groff [Mon, 3 May 2010 05:40:54 +0000 (22:40 -0700)]
tools.deploy.shaker: adjust fallback error handler message so it looks better in a Win32 MessageBox

13 years agowindows.errors, debugger.windows: improve description of Windows error objects
Joe Groff [Mon, 3 May 2010 05:29:59 +0000 (22:29 -0700)]
windows.errors, debugger.windows: improve description of Windows error objects

13 years agowindows.directx.dinput: pre-construct some intermediate structs to slightly improve...
Joe Groff [Mon, 3 May 2010 01:14:30 +0000 (18:14 -0700)]
windows.directx.dinput: pre-construct some intermediate structs to slightly improve horrible compilation time on the gigantic macro expansions

13 years agowindows.directx.dinput: forgot to reenable constant initialization
Joe Groff [Sun, 2 May 2010 18:23:51 +0000 (11:23 -0700)]
windows.directx.dinput: forgot to reenable constant initialization

13 years agowindows.directx.dinput: use macros to define format constants to avoid holding onto...
Joe Groff [Sun, 2 May 2010 08:27:07 +0000 (01:27 -0700)]
windows.directx.dinput: use macros to define format constants to avoid holding onto a bunch of useless symbols after deployment

13 years agojoystick-demo: missing iota
Joe Groff [Sun, 2 May 2010 08:25:46 +0000 (01:25 -0700)]
joystick-demo: missing iota

13 years agoUse dinput as default windows game.input backend
Joe Groff [Sun, 2 May 2010 07:38:37 +0000 (00:38 -0700)]
Use dinput as default windows game.input backend

14 years agoMerge branch 'master' of factorcode.org:/git/factor
Joe Groff [Sun, 2 May 2010 00:03:22 +0000 (17:03 -0700)]
Merge branch 'master' of factorcode.org:/git/factor

14 years agokernel: update *dip docs to match stack effects and not mention retain stack
Joe Groff [Sun, 2 May 2010 00:03:03 +0000 (17:03 -0700)]
kernel: update *dip docs to match stack effects and not mention retain stack

14 years agoFix normalization to take stride/padding bytes into account
Doug Coleman [Sat, 1 May 2010 23:37:59 +0000 (18:37 -0500)]
Fix normalization to take stride/padding bytes into account

14 years agomove images.bitmap.loading to images.bitmap
Doug Coleman [Sat, 1 May 2010 22:11:11 +0000 (17:11 -0500)]
move images.bitmap.loading to images.bitmap

14 years agoFix help lint for math.polynomials
Doug Coleman [Fri, 30 Apr 2010 19:04:45 +0000 (14:04 -0500)]
Fix help lint for math.polynomials

14 years agoClean up math.polynomials some
Doug Coleman [Fri, 30 Apr 2010 13:42:29 +0000 (08:42 -0500)]
Clean up math.polynomials some

14 years agoFix enter-fullscreen on windows
unknown [Fri, 30 Apr 2010 13:06:06 +0000 (08:06 -0500)]
Fix enter-fullscreen on windows

14 years agoFix smart-if* for multiple inputs and test. oops
Doug Coleman [Fri, 30 Apr 2010 01:21:53 +0000 (20:21 -0500)]
Fix smart-if* for multiple inputs and test. oops

14 years agoDemonstrate smart-if and smart-if* combinators
Doug Coleman [Fri, 30 Apr 2010 00:57:07 +0000 (19:57 -0500)]
Demonstrate smart-if and smart-if* combinators

14 years agoui.backend.x11: fix load error
Slava Pestov [Thu, 29 Apr 2010 07:59:31 +0000 (03:59 -0400)]
ui.backend.x11: fix load error

14 years agoui.backend.windows: fix compile error
Slava Pestov [Thu, 29 Apr 2010 07:20:17 +0000 (02:20 -0500)]
ui.backend.windows: fix compile error

14 years agoui: use scroll delta information for smoother mouse scrolling on Windows and Mac...
Slava Pestov [Thu, 29 Apr 2010 06:52:32 +0000 (02:52 -0400)]
ui: use scroll delta information for smoother mouse scrolling on Windows and Mac OS X

14 years agomath.vectors: (vmerge) shouldn't be generic
Slava Pestov [Thu, 29 Apr 2010 06:28:05 +0000 (02:28 -0400)]
math.vectors: (vmerge) shouldn't be generic

14 years agomath.vectors.simd.cords: a dash of inline sauce
Slava Pestov [Thu, 29 Apr 2010 05:58:56 +0000 (01:58 -0400)]
math.vectors.simd.cords: a dash of inline sauce

14 years agobootstrap.handbook: fix typo
Slava Pestov [Thu, 29 Apr 2010 05:43:40 +0000 (01:43 -0400)]
bootstrap.handbook: fix typo

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Slava Pestov [Thu, 29 Apr 2010 05:32:39 +0000 (01:32 -0400)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agoFix echo bug again
Sheepson Apprentice [Thu, 29 Apr 2010 05:23:03 +0000 (00:23 -0500)]
Fix echo bug again

14 years agogame.models.half-edge: additional vertex-diagonals word
Joe Groff [Thu, 29 Apr 2010 01:52:40 +0000 (18:52 -0700)]
game.models.half-edge: additional vertex-diagonals word

14 years agogame.models.half-edge words for walking half-edge model representation
Joe Groff [Thu, 29 Apr 2010 01:41:36 +0000 (18:41 -0700)]
game.models.half-edge words for walking half-edge model representation

14 years agoMerge branch 'master' of factorcode.org:/git/factor
Joe Groff [Wed, 28 Apr 2010 22:49:00 +0000 (15:49 -0700)]
Merge branch 'master' of factorcode.org:/git/factor

14 years agorename half-floats vocab to math.floats.half
Joe Groff [Wed, 28 Apr 2010 22:48:47 +0000 (15:48 -0700)]
rename half-floats vocab to math.floats.half

14 years agovocabs: add a link to the parse-time word lookup article
Slava Pestov [Wed, 28 Apr 2010 09:04:09 +0000 (05:04 -0400)]
vocabs: add a link to the parse-time word lookup article

14 years agoio.sockets: update <datagram> docs
Slava Pestov [Tue, 27 Apr 2010 14:52:19 +0000 (10:52 -0400)]
io.sockets: update <datagram> docs

14 years agoMerge branch 'master' of git://factorcode.org/git/factor
Daniel Ehrenberg [Sun, 25 Apr 2010 23:10:36 +0000 (18:10 -0500)]
Merge branch 'master' of git://factorcode.org/git/factor

14 years agoDocumenting bitfields in structs
Daniel Ehrenberg [Sun, 25 Apr 2010 23:09:58 +0000 (18:09 -0500)]
Documenting bitfields in structs

14 years agoTest factor.sh output on unix platforms
Doug Coleman [Sun, 25 Apr 2010 20:23:44 +0000 (15:23 -0500)]
Test factor.sh output on unix platforms

14 years agogitignore the fresh boot image
Doug Coleman [Sun, 25 Apr 2010 20:16:08 +0000 (15:16 -0500)]
gitignore the fresh boot image

14 years agoMerge remote branch 'origin/master'
Doug Coleman [Sun, 25 Apr 2010 19:59:39 +0000 (14:59 -0500)]
Merge remote branch 'origin/master'

14 years agoA little overzealous with the factor.sh echo cleanup
Doug Coleman [Sun, 25 Apr 2010 19:59:07 +0000 (14:59 -0500)]
A little overzealous with the factor.sh echo cleanup

14 years agoMerge branch 'master' of factorcode.org:/git/factor
Joe Groff [Sun, 25 Apr 2010 19:19:28 +0000 (12:19 -0700)]
Merge branch 'master' of factorcode.org:/git/factor

14 years agoui.backend.x11: search path for xmessage rather than hardcoding path
Joe Groff [Sun, 25 Apr 2010 19:18:45 +0000 (12:18 -0700)]
ui.backend.x11: search path for xmessage rather than hardcoding path

14 years agoMaking tools.deploy.shaker remove require-when data structures
Daniel Ehrenberg [Sun, 25 Apr 2010 02:29:46 +0000 (21:29 -0500)]
Making tools.deploy.shaker remove  require-when data structures

14 years agoFix unit test for when auto-use isnt on and test the other constructor error condition
Doug Coleman [Sat, 24 Apr 2010 04:30:51 +0000 (23:30 -0500)]
Fix unit test for when auto-use isnt on and test the other constructor error condition

14 years agoRemove dumb echo from factor.sh
Doug Coleman [Sat, 24 Apr 2010 04:28:24 +0000 (23:28 -0500)]
Remove dumb echo from factor.sh