Joe Groff
7e6d3dfd9a
prettyprint.backend: add 1 to nesting-limit while pprinting hashtables 'cause H{ ~array~ ~array~ } is kind of useless
2010-06-16 16:23:28 -05:00
Joe Groff
f73c72c340
typed: include value that raised the error in type-mismatch-errors
2010-06-16 16:23:27 -05:00
Joe Groff
0533afc18f
sequences.cords: fall back to generic sequence methods when both arguments to binary cord ops aren't cords
2010-06-16 16:23:27 -05:00
Slava Pestov
8bad08ce8d
Merge branch 'client-bind' of git://github.com/x6j8x/factor
2010-06-16 17:00:35 -04:00
Sascha Matzke
6a86d22478
added doc for with-local-address
2010-06-16 22:54:53 +02:00
Slava Pestov
12a60e1f03
tools.disassembler.udis: update struct layout for latest udis from git
2010-06-16 16:48:58 -04:00
Joe Groff
19727f8ca5
math.vectors.simd.cords: add regression test for >A
2010-06-15 22:44:15 -07:00
Joe Groff
1f6070d48c
math.vectors.simd.cords: use head-slice/tail-slice to slice up input sequences for >A op so that e.g. float-4{ ... } >double-4 works
2010-06-15 21:55:26 -07:00
Slava Pestov
5c7aaa0473
compiler.cfg.ssa: fixing test failures
2010-06-15 17:18:51 -04:00
Daniel Ehrenberg
ac15409baa
Fixing typo in modular arithmetic unit test (should use iota, not integer sequences, and just happened to work still)
2010-06-15 16:15:49 -04:00
Daniel Ehrenberg
ece6c578d9
Fixing infinite loop in loading benchmark.fib4
2010-06-15 13:53:40 -04:00
Daniel Ehrenberg
f34630252d
Merge branch 'master' into propagation
2010-06-15 13:26:01 -04:00
Slava Pestov
fb4de47abf
Add GC maps to ##box, ##box-long-long, ##alien-invoke, ##alien-indirect and ##call-gc; remove ##gc-map instruction
2010-06-14 19:39:46 -04:00
Joe Groff
72e0fce0e4
prettyprint.backend: add 1 to nesting-limit while pprinting hashtables 'cause H{ ~array~ ~array~ } is kind of useless
2010-06-14 16:13:30 -07:00
Joe Groff
26c13882fc
typed: include value that raised the error in type-mismatch-errors
2010-06-14 14:23:55 -07:00
Joe Groff
f2e9703143
sequences.cords: fall back to generic sequence methods when both arguments to binary cord ops aren't cords
2010-06-13 20:41:46 -07:00
Doug Coleman
f32bc76447
Merge branch 'master' of github.com:erg/factor
2010-06-13 20:35:26 -05:00
Doug Coleman
f0015beaf9
Merge branch 'master' of http://factorcode.org/git/factor
2010-06-13 19:59:38 -05:00
Doug Coleman
e31ffa013e
Add more time bindings
2010-06-13 19:34:18 -05:00
Doug Coleman
c8be326487
Better name for a word in calendar
2010-06-13 19:34:17 -05:00
Doug Coleman
b8ac578051
Add a combinator to make a unique directory, set that to the current and temp directories, and then delete the directory when done. Useful when working with apps that need to write intermediate files to the current directory
2010-06-13 19:34:17 -05:00
Slava Pestov
f330e069c1
alien.data: fix unit test failure
2010-06-13 19:34:16 -05:00
Joe Groff
f11f765591
alien.data: make binary-zero? public and move it from classes.struct.private
2010-06-13 19:34:16 -05:00
Joe Groff
2fc70692ca
classes.struct: fix some bugs in binary-zero?, add unit tests
2010-06-13 19:34:15 -05:00
Slava Pestov
5e39764ccd
vm: have to be extra careful when messing with return addresses
2010-06-13 18:12:57 -04:00
Joe Groff
f9262bd76d
Merge branch 'master' of factorcode.org:/git/factor into clean-winnt-x86-64
2010-06-12 23:52:47 -07:00
Slava Pestov
d91524b98d
vm: context switching needs to scrub the return address
2010-06-12 19:54:31 -04:00
Joe Groff
8dcfb866e6
specialized-vectors: redefine "like" for the corresponding specialized-array of a specialized-vector to share storage when a vector is liked
2010-06-12 16:07:21 -07:00
Slava Pestov
dbf6bac599
cpu.x86: combine 32-bit and 64-bit %dispatch template
2010-06-11 21:52:38 -04:00
Slava Pestov
ea6f0066e3
Merge branch 'for-slava' of git://git.rfc1149.net/factor
2010-06-11 20:10:07 -04:00
Slava Pestov
a08295d9b7
GC maps for more compact inline GC checks
2010-06-11 20:06:00 -04:00
Slava Pestov
f16e660805
mirrors: rename enumerated-sequence to inspected-sequence
2010-06-11 17:14:15 -04:00
Slava Pestov
e2df45c136
specialized-vectors: add specialized-vectors.mirrors vocab for inspector support
2010-06-11 17:11:21 -04:00
Slava Pestov
d877037c32
alien.data: fix unit test failure
2010-06-11 15:38:57 -04:00
Samuel Tardieu
3685a22c62
Fix "primes-between" and "primes-upto" with pathological bounds.
...
"primes-between" was buggy when bounds were given in the wrong order
or when the high bound was smaller than 3.
2010-06-11 16:07:52 +02:00
Joe Groff
2ab97370da
alien.data: make binary-zero? public and move it from classes.struct.private
2010-06-10 17:05:43 -07:00
Joe Groff
7e0ade0972
classes.struct: fix some bugs in binary-zero?, add unit tests
2010-06-10 16:49:59 -07:00
Doug Coleman
e03a5b038e
Rename alarms -> timers
2010-06-10 16:39:13 -05:00
Doug Coleman
f6e3f90142
Add a remove-wm-handler word to windows ui backend
2010-06-10 16:06:38 -05:00
Joe Groff
d53923c662
xmode.modes: add cuda xmode
2010-06-08 17:08:51 -07:00
Joe Groff
d0d85e9fb0
specialized-arrays, specialized-vectors: add direct-slice, direct-head, direct-tail, etc. words for creating specialized-arrays over subsets of specialized sequences
2010-06-08 15:00:11 -07:00
Joe Groff
3864c2b4e9
ui: document non-polymorphic effect of with-ui, and that it doesn't return
2010-06-08 13:54:10 -07:00
Joe Groff
2a87056a8a
specialized-vectors: implement binary-object protocol for specialized-vectors
2010-06-08 13:40:07 -07:00
Joe Groff
9d43aa3618
specialized-vectors: add push-new operation that allocates and returns a new struct on the end of a specialized vector
2010-06-08 13:15:04 -07:00
Joe Groff
e45373d1ce
classes.struct: implement "group-words" method on struct-class so that struct classes can be used as a CONSULT: protocol
2010-06-08 12:52:46 -07:00
Joe Groff
276dd05905
xml.syntax: parse <-variable->s with parse-word instead of search so the no-word error gets properly raised when variable doesn't exist
2010-06-08 12:18:06 -07:00
Joe Groff
690175a574
xmode.catalog: pre-convert globs to regexes in modes hash so their compilation is memoized
2010-06-05 22:27:44 -07:00
Slava Pestov
55f3c3da4d
Merge branch 'master' of git://factorcode.org/git/factor
2010-06-06 00:48:48 -04:00
Joe Groff
c461cb30b7
xmode.catalog: factor ?find-mode (which returns f if no mode found) from find-mode (which defaults to "text" if no mode found)
2010-06-05 15:17:51 -07:00
Joe Groff
e21277f204
xmode.catalog: fix find-mode so it works with full paths
2010-06-05 15:08:02 -07:00
Slava Pestov
62d566ca1f
Merge branch 'master' of http://github.com/Blei/factor
2010-06-05 16:58:00 -04:00
Doug Coleman
2216917cb5
Don't add empty vocab-roots lines
2010-06-04 14:17:07 -05:00
Joe Groff
eab513cce5
ui.backend.windows: make small-title-bar windows WS_EX_TOPMOST so they behave like os x small-title-bar windows
2010-06-03 23:03:53 -07:00
Joe Groff
201ec1eaa4
json.reader: factor read-jsons from json>
2010-06-03 13:11:47 -07:00
Slava Pestov
b1a601b2cb
ui.backend.x11: fix typo
2010-06-02 03:13:57 -04:00
Slava Pestov
daaabbff8f
alien.prettyprint: fix wrapping when prettyprinting pointer:
2010-06-02 03:11:46 -04:00
Slava Pestov
5f7949197b
ui.backend.windows: remove a usage of rot
2010-06-02 02:59:58 -04:00
Slava Pestov
af7df6ec67
ui.backend.x11: fixing raise-window*
2010-06-02 02:59:57 -04:00
Slava Pestov
8fac444728
x11: general cleanup
2010-06-02 02:59:57 -04:00
Slava Pestov
b5fb679943
Move system word from unix.ffi to libc since its not Unix-specific
2010-06-02 02:59:56 -04:00
Philipp Brüschweiler
bf41d025d2
ui.render: set pack alignment to 1, so padding images isn't needed anymore
2010-06-01 13:52:00 +02:00
Joe Groff
ba143db496
compiler.cfg.intrinsics.simd: intrinsic support for double-2>float-4 conversion
2010-06-01 00:34:50 -07:00
Slava Pestov
e4d72fb82b
calendar.model, tools.errors.model: re-initialize models on startup
2010-05-31 20:14:54 -04:00
Slava Pestov
1a6e5324c7
vocabs.refresh.monitor: spin off new monitor threads when add-vocab-root is called. Fixes a problem where depending on the order of startup hooks, refresh-all would sometimes be broken for custom vocab roots
2010-05-31 20:14:54 -04:00
Slava Pestov
e88c426390
alien.prettyprint: fix prettyprinting of array types and CALLBACK: (reported by Anton Gorenko)
2010-05-30 16:21:43 -04:00
Slava Pestov
2ac2ec0c74
ui.tools.listener: fix error bar display
2010-05-30 16:09:51 -04:00
Slava Pestov
75e371bd22
nibble-arrays: replace a -rot usage with locals
2010-05-29 05:22:10 -04:00
Slava Pestov
6e818ad439
tools.deploy.macosx: make deployment work when we're not running the .app bundle
2010-05-29 04:27:55 -04:00
Slava Pestov
b9b72a6efa
ui.backend.cocoa: factor out stop-io-thread word for use by upcoming Gtk UI backend
2010-05-29 04:27:54 -04:00
Slava Pestov
faa015f71b
bootstrap.image.download: refactor it a bit to make mason.updates more robust
2010-05-25 17:18:06 -04:00
Doug Coleman
cff141f4b8
- Put back the good version of restart-alarm
...
- Don't sleep if the alarm is stopped before it starts
- Right before I committed, I changed the code. oops.
2010-05-24 22:59:26 -05:00
Doug Coleman
3c853f0e60
Use restart-alarm for ui blink code
2010-05-24 22:59:25 -05:00
Doug Coleman
2cfcc16452
Add a restart-alarm word that doesn't spawn a new thread
2010-05-24 22:59:25 -05:00
Joe Groff
3fa9156dc9
Merge branch 'master' of factorcode.org:/git/factor
2010-05-24 18:39:24 -07:00
Joe Groff
45e635fa4e
math.vectors.simd.intrinsics: use unrolled loops for some software fallbacks
2010-05-24 18:39:06 -07:00
Joe Groff
e7a9a9f222
sequences.unrolled: tweak helper words so that call( -- ) guards inline in more cases (w/ help from Slava)
2010-05-24 16:50:46 -07:00
Slava Pestov
ceba2e1c6f
ui.backend.x11: don't pass GLX_USE_GL since its a no-op and Mesa doesn't like it
2010-05-24 19:23:55 -04:00
Slava Pestov
36aa9995f9
ui.gadgets.worlds: don't enable depth buffer by default, since it just wastes memory and apps which need it can pass custom pixel-format-attributes to open-window to enable it explicitly
2010-05-24 19:23:02 -04:00
Joe Groff
c272949a6b
Merge branch 'master' of factorcode.org:/git/factor
2010-05-24 14:19:53 -07:00
Slava Pestov
b75d852e10
ui: ditch window restore behavior since it was broken
2010-05-24 16:50:09 -04:00
Joe Groff
7027838fda
math.vectors.simd.intrinsics: remove call( -- ) wrapper from fallbacks
2010-05-24 12:58:14 -07:00
Joe Groff
e36b5a774c
sequences.unrolled: reimplement underlying (unrolled-each-integer) loop as a partial eval, sacrificing row polymorphism for flexibility
2010-05-24 00:33:41 -07:00
Joe Groff
bceec9daeb
math.vectors.simd.intrinsics: use <direct-X-array> instead of X-array-cast to construct view over fallback byte-arrays to avoid redundant array size checking
2010-05-23 23:18:02 -07:00
Joe Groff
9977f66c01
math.vectors.simd.intrinsics: wrap intrinsic fallback bodies in call( -- ) so we can abuse macros in their normally-inlined bodies
2010-05-23 22:39:44 -07:00
Slava Pestov
608175447b
game.input.x11: add alien.data to using list
2010-05-24 00:32:35 -04:00
Doug Coleman
fc9a5fee58
Delay the cursor blink
2010-05-23 22:26:46 -05:00
Doug Coleman
616ad9a4a7
- Remove the alarms stop variable, and instead for a stop condition, check against the thread object being replaced.
...
- Interrupt the thread sleep when stopped, but only if the quotation is not currently running
2010-05-23 22:25:17 -05:00
Doug Coleman
e83777ff06
Merge branch 'master' of git://factorcode.org/git/factor
2010-05-23 22:19:48 -05:00
Slava Pestov
df7fef25ce
alarms: new test case for interrupt race
2010-05-23 23:16:41 -04:00
Slava Pestov
fc234b89dd
cpu.x86: fix callbacks receiving stack parameters on Win64
2010-05-23 23:08:07 -04:00
Doug Coleman
4a31af7ea4
Merge branch 'master' of git://factorcode.org/git/factor
2010-05-23 21:34:37 -05:00
Slava Pestov
fa53b4ab2a
opengl.gl.unix renamed to opengl.gl.x11
2010-05-23 22:25:17 -04:00
Slava Pestov
a3e5e64eab
ui.backend.x11: fix load error
2010-05-23 22:08:24 -04:00
Doug Coleman
6edffb4482
Remove typo slot, fix scheduling formula, record initial iteration nano-count
2010-05-23 18:44:04 -05:00
Slava Pestov
0d529a09f1
alarms: add unit test for race condition
2010-05-23 18:38:37 -04:00
Slava Pestov
f04ae609c8
Fixes for out parameter changes
2010-05-23 03:27:40 -05:00
Slava Pestov
5d9993d46f
Updating code to use with-out-parameters
2010-05-23 03:07:47 -04:00
Slava Pestov
e65a1b301a
cpu.x86.64: callback prologue was clobbering 5th parameter register on x86-64
2010-05-23 03:00:53 -04:00
Joe Groff
746810c939
system-info.windows.nt: lingering string C type
2010-05-22 19:23:45 -07:00
Slava Pestov
b8ec5c6176
Stack allocation improvements
...
- New with-out-parameters combinator
- Inhibit tail call optimization in frames with local allocation, to ensure that passing a stack allocated value to the last word in the quotation works
- local allocations are now aligned properly
- spill slots are now aligned properly aligned in frames which have parameter and local allocation areas
2010-05-22 02:37:00 -04:00
Doug Coleman
cfa736ab29
Clarify and reword alarms documentation
2010-05-22 00:17:30 -05:00
Doug Coleman
f0183deffa
Remove alarms from using list, minor refactoring
2010-05-21 20:48:33 -05:00
Doug Coleman
1cca8f0611
Rotate logs every day, but wait a day first
2010-05-21 20:44:38 -05:00
Doug Coleman
179acf5ea6
Update code base for new alarms api
2010-05-21 20:42:12 -05:00
Doug Coleman
3a8aac8c76
Cleaner implementation of alarms. Separate creating alarm from starting/stopping them.
2010-05-21 20:29:25 -05:00
Doug Coleman
f1ffbd221d
Make the alarm test wait for the promise to be fulfilled instead of returning immediately and failing
2010-05-21 20:03:32 -05:00
Joe Groff
e7767bd3f2
Merge branch 'master' of factorcode.org:/git/factor
2010-05-21 16:40:41 -07:00
Niklas.Waern
f875324e77
x11.xinput2.ffi: make XI*Mask less ugly
2010-05-22 01:36:04 +02:00
Slava Pestov
7e77b35502
io.backend.unix: make timeouts work on stdin once Doug fixes alarms
2010-05-21 19:09:15 -04:00
Slava Pestov
2f3963d055
alarms: add a couple of unit tests
2010-05-21 19:09:01 -04:00
Niklas.Waern
c51b6e0501
x11.xlib: add GenericEvent constant
2010-05-22 00:29:38 +02:00
Niklas.Waern
8493b7a57f
x11.xinput2: xi2-available?
2010-05-22 00:12:51 +02:00
Niklas.Waern
1ba823c32f
x11.xlib: add a few things for xinput2
2010-05-22 00:12:51 +02:00
Niklas.Waern
32c13c2a6f
x11.xinput2.ffi
2010-05-22 00:12:51 +02:00
Niklas.Waern
ddff7be111
x11.xinput2.constants
2010-05-22 00:12:50 +02:00
Niklas.Waern
f1f55c3fa3
create basis/x11/xinput2
2010-05-22 00:12:50 +02:00
Doug Coleman
7a41f5da2e
Fix using list in sequences.unrolled, keys/values was not appropriate in several locations
2010-05-21 15:28:05 -05:00
Doug Coleman
7df7c389c7
Change alarm start variable to store nano-count of start time instead of (nano-count + interval)
2010-05-21 13:28:03 -05:00
Doug Coleman
a87656a46c
Simplify the alarms implementation a bit
2010-05-21 13:19:15 -05:00
Doug Coleman
d03e326059
- Change alarms to run in a single spawned green thread instead of spawning a new thread for each iteration of the alarm so game.loop can use alarms -- the old behavior can be embedded by calling in-thread in your alarm handler quotation
...
- Remove current-alarm dynamic variable in favor of optionally passing the alarm on the stack to the quotation
- Reschedule alarms based on a multiple of the interval from the original start time to eliminate alarm drift over time
- Clarify alarm contract in docs
- Fix later example
2010-05-21 12:48:05 -05:00
Doug Coleman
e559f1470b
Use keys/values where appropriate
2010-05-21 12:48:04 -05:00
Joe Groff
f29945b01c
sequences.unrolled vocab with fixed-length unrolling versions of some each and map combinators
2010-05-19 16:22:22 -07:00
Slava Pestov
630aef00cb
specialized-arrays: fix typo
2010-05-19 03:23:26 -04:00
Slava Pestov
0f935bfbde
compiler.cfg.builder.alien: use ##local-allot to fix value struct passing on Win64
2010-05-19 01:53:32 -04:00
Slava Pestov
f4ff644329
cpu.x86.32: fix load error
2010-05-19 01:29:52 -04:00
Slava Pestov
bcf7a5e15e
Use ##local-allot to simplify longlong unboxing
2010-05-19 01:07:22 -04:00
Slava Pestov
70f6717713
compiler.tree.propagation.known-words: fix load error
2010-05-19 00:51:03 -04:00
Slava Pestov
84e7076474
alien.data: add with-scoped-allocation combinator for stack-allocating C data
2010-05-19 00:33:36 -04:00
Slava Pestov
5dd2115665
compiler.cfg: generalize ##prepare-struct-caller instruction to alloca()-like ##local-allot
2010-05-19 00:33:15 -04:00
Slava Pestov
04973f4d97
stack-checker.alien: callback and assembly quotations can be callables
2010-05-19 00:31:46 -04:00
Slava Pestov
40f58f27d6
specialized-arrays: rename byte-array>T-array to T-array-cast, and make it work with anything that responds to >c-ptr / byte-length
2010-05-18 23:09:34 -04:00
Slava Pestov
fbc222a8dc
compiler.tests: fix test for generalizations change
2010-05-18 23:08:37 -04:00
Slava Pestov
f70d89b145
Fixing fallout from sequences.generalizations change
2010-05-18 22:59:07 -04:00
Slava Pestov
75fc43ea58
libc: use size_t instead of ulong for correct behavior on win64
2010-05-18 22:34:52 -04:00
Slava Pestov
838ffe3e09
alien.c-types: make a couple of words private
2010-05-18 22:34:42 -04:00
Slava Pestov
d05bb6e5d7
cpu.x86.assembler: drop useless ST0 operand from some x87 instructions
2010-05-18 19:37:59 -04:00
Slava Pestov
f6430de98a
cpu.x86.x87: compares were clobbering ST0
2010-05-18 19:18:53 -04:00
Slava Pestov
50b43806e8
alien.libraries, stack-checker.alien: check user inputs more carefully to ensure that invalid ABI descriptors don't slip through and break random stuff (reported by prunedtree)
2010-05-18 18:46:31 -04:00
Slava Pestov
c0f39aa99d
Move remaining sequence operations from generalizations to sequences.generalizations where they belong
2010-05-18 18:36:47 -04:00
Slava Pestov
0bc97cce00
cpu.x86.assembler: fix typo
2010-05-18 17:59:34 -04:00
Slava Pestov
379dd67ee8
cpu.x86.x87: use FISTPD to convert floats to integers, instead of the SSE3 instruction FISTTPD
2010-05-18 17:10:58 -04:00
Slava Pestov
4b2f4fc72e
cpu.x86.assembler: AH CH DH BH register operands now work properly
2010-05-18 17:10:32 -04:00
Slava Pestov
dda4f134ba
compiler.cfg.value-numbering: constant folding for ##shuffle-vector
2010-05-18 04:22:21 -04:00
Slava Pestov
c39344da1a
compiler.cfg.value-numbering: add constant folding for ##gather-vector instructions, and fix ##scalar>vector constant folding for integers
2010-05-18 03:56:07 -04:00
Slava Pestov
8611ba2a4d
cpu.x86.64: call check-sse to ensure that cpu.x86.sse is loaded
2010-05-17 11:43:42 -04:00
Slava Pestov
66e9bed2d8
cpu.x86: add x87 codegen for Model T enthusiasts
2010-05-17 11:35:47 -04:00
Slava Pestov
9f53b638f6
compiler.cfg.ssa.interference: implement linear-time interference test
2010-05-17 05:50:13 -04:00
Slava Pestov
58447d94fa
compiler.cfg.ssa.interference.live-ranges: compute correct live ranges for ##phi instructions
2010-05-17 05:50:13 -04:00
Slava Pestov
1f8af8d794
compiler.cfg.linear-scan: fix typo
2010-05-17 05:50:13 -04:00
Joe Groff
62b882937a
cpu.x86.assembler: a choice selection of x87 instructions
2010-05-17 02:02:40 -07:00
Slava Pestov
325df742b0
cpu.x86.32: clean up %unary/binary-float-function
2010-05-17 04:03:13 -04:00
Slava Pestov
ed04758ad6
cpu.x86: get rid of this extra-stack-space nonsense
2010-05-17 02:14:44 -04:00
Slava Pestov
0f5d9d368a
compiler.cfg: refactor stack frame code and fix frame pointer usage in callbacks
2010-05-16 21:04:40 -04:00
Slava Pestov
c83c850080
compiler: hack to make XCreateIC() work on x86-64
2010-05-16 04:49:53 -04:00
Slava Pestov
99757a8e0b
Merge branch 'master' of git://factorcode.org/git/factor
2010-05-16 04:10:03 -04:00
Slava Pestov
3356661d11
Fixes for FFI changes
2010-05-16 04:09:47 -04:00
Joe Groff
7982bdd8f9
compiler.cfg.intrinsics.simd: use ^^select-vector for simd constant nth when available
2010-05-16 00:50:20 -07:00
Joe Groff
bf27af58f4
compiler.cfg.instructions: ##select-vector instruction mapping to SSE4 PEXTR*
2010-05-16 00:50:19 -07:00
Slava Pestov
35bd2bca06
FFI rewrite part 5: return value boxing and callback parameter boxing now uses vregs; simplify return value unboxing
2010-05-16 03:43:23 -04:00
Joe Groff
79f4a59104
compiler.cfg.intrinsics.simd: use new ##gather-int-vector insns to construct int vectors when available
2010-05-15 23:59:27 -07:00
Joe Groff
e74b0b2a7b
compiler.cfg.instructions: ##gather-int-vector-2/4 instructions that map to SSE4 PINSR/PEXTR
2010-05-15 23:48:22 -07:00
Joe Groff
2737a136a9
cpu.x86: fix bootstrap load error
2010-05-15 15:28:22 -07:00
Joe Groff
41ba3c9c83
cpu.x86: don't enable bit-count intrinsic by default
2010-05-15 14:52:00 -07:00
Joe Groff
ed1ede52af
cpu.x86.features: ( int alien-assembly ) c-bool> ==> ( bool alien-assembly )
2010-05-15 14:33:19 -07:00
Joe Groff
c06ebe502e
cpu.x86: enable bit-count intrinsic if POPCNT available
2010-05-15 14:00:12 -07:00
Joe Groff
ad74f99ec1
compiler.cfg.intrinsics: intrinsic for fixnum-bit-count
2010-05-15 13:59:47 -07:00
Joe Groff
b56adf5091
compiler.cfg.instructions: ##bit-count insn
2010-05-15 13:57:35 -07:00
Joe Groff
a7de341809
math.bitwise: factor M\ fixnum (bit-count) to a separate word so it can be made intrinsic
2010-05-15 13:27:26 -07:00
Joe Groff
7753198b86
cpu.x86.features: add popcnt? test
2010-05-15 13:26:14 -07:00
Joe Groff
8588f5a4fe
cpu.x86.assembler: SETcc instructions
2010-05-15 13:14:27 -07:00
Joe Groff
3b28648fa3
cpu.x86.assembler: BT family instructions
2010-05-15 13:08:22 -07:00
Joe Groff
4d0508a995
opengl.textures: borrow get-texture-float and get-texture-int helper words from gpu.textures
2010-05-15 12:09:50 -07:00
Slava Pestov
374e928261
compiler.cfg.value-numbering.comparisons: ##test-imm rewrite rule must check that the immediate fits
2010-05-15 03:19:24 -04:00
Daniel Ehrenberg
476ef2d3ef
Inlining no-method when a generic word has no method
2010-05-14 20:28:09 -05:00
Daniel Ehrenberg
056951fd0c
Merge branch 'master' of git://factorcode.org/git/factor into propagation
...
Conflicts:
basis/compiler/tree/propagation/propagation-tests.factor
2010-05-14 18:59:39 -05:00
Slava Pestov
bd55712f82
compiler: fix bad unit test
2010-05-14 18:37:11 -04:00
Slava Pestov
3e68cdb709
cpu.x86.bootstrap: use TEST instruction
2010-05-14 18:37:10 -04:00
Slava Pestov
0dbc9eaae0
compiler.cfg: more silly optimizations
2010-05-14 18:37:09 -04:00
Slava Pestov
210e88b901
compiler.cfg.instructions: change vreg-insn from a mixin into a superclass
2010-05-14 18:37:09 -04:00
Slava Pestov
5ac0252f04
compiler.cfg.linear-scan: pointless optimizations
2010-05-14 18:37:08 -04:00
Slava Pestov
b5cde08732
compiler.cfg.ssa.live-ranges: clean up
2010-05-14 18:37:08 -04:00
Slava Pestov
b360a4a514
bootstrap.compiler.timing: small update
2010-05-14 18:37:07 -04:00
Slava Pestov
9bb3c0d71b
compiler.cfg.alias-analysis: simplify and speed up
2010-05-14 18:37:07 -04:00
Slava Pestov
5a36954a86
compiler.cfg: use x86 TEST instruction to optimize 'bitand 0 ='
2010-05-14 18:37:06 -04:00
Joe Groff
f4e10849dd
sequences.cords: specialize vshuffle-elements to use vshuffle2-elements on cord components
2010-05-14 13:29:37 -07:00
Joe Groff
40c75a996e
math.vectors.simd.intrinsics: fix scalar fallback for (simd-vshuffle2-elements)
2010-05-14 02:47:39 -07:00
Joe Groff
349397e67c
math.vectors, math.vectors.simd: add user-facing vshuffle2 word
2010-05-14 02:47:05 -07:00
Joe Groff
e96a7a8c5e
compiler.cfg.intrinsics.simd: mod shuffle indices for shuffle-2-vectors-imm intrinsic so they wrap like a real instruction would
2010-05-14 01:20:05 -07:00
Joe Groff
f202c97b52
math.vectors.simd.intrinsics: (simd-vshuffle2-elements) intrinsic that creates a vector by selecting elements from two input vectors. use ##shuffle-vector-halves-imm to implement for double-2s with SSE
2010-05-14 01:16:29 -07:00
Joe Groff
1c96a37e47
compiler.cfg.instructions: ##shuffle-vector-halves-imm insn to map to SSE's two-input SHUFPS/SHUFPD
2010-05-14 00:20:21 -07:00
Slava Pestov
4ad32f53fe
math.vectors.simd.cords: implement new-sequence and like methods on cords to make cross product work
2010-05-13 21:55:19 -04:00
Slava Pestov
d6b4540624
cpu.x86.32: check for SSE2 on bootstrap since Factor now requires it
2010-05-13 18:25:46 -04:00
Slava Pestov
db0f40e481
compiler: small fixes and cleanups
2010-05-13 02:48:20 -04:00
Joe Groff
ab5b5d84cb
x11: convert XSupportsLocale return value to factor bool before testing (bug reported by ceninan)
2010-05-12 18:07:33 -07:00
Slava Pestov
b336204c02
compiler.cfg.builder.alien: fix for x86-32
2010-05-12 18:07:11 -04:00
Slava Pestov
5e290d5648
Refactor x86-32 stack cleanup logic
2010-05-12 02:09:11 -04:00
Slava Pestov
09e1cf58be
Temporary fixes for x86-32 until FFI boxing is rewritten
2010-05-12 01:41:49 -04:00
Slava Pestov
5a102c717d
Eliminate compiler.alien
2010-05-11 23:24:47 -04:00
Slava Pestov
3d11fc1451
cpu.x86.64: fix typo
2010-05-11 22:29:46 -04:00
Slava Pestov
b92c67fc2c
Move flatten-c-type to death row so that it can be executed in part 5
2010-05-11 22:26:31 -04:00