Commit Graph

81 Commits

Author SHA1 Message Date
Graydon Hoare 8e9c5b96fb Change rust_vec to have a 16-byte header, to 16-byte-align vec-body data. Major perf win. 2011-04-02 19:05:12 -07:00
Graydon Hoare b2427509e2 Another go at changing compile-command, this time using RBUILD env var. 2011-03-25 15:07:27 -07:00
Graydon Hoare 91c2b82b09 Revert "Bulk-edit compile commands in emacs chatter to point to assumed build/ dir off src root."
This reverts commit 846f2e2ba9.
2011-03-25 14:05:38 -07:00
Graydon Hoare 846f2e2ba9 Bulk-edit compile commands in emacs chatter to point to assumed build/ dir off src root. 2011-03-25 13:48:37 -07:00
Graydon Hoare fc7cbe31f9 Switch rustboot from element-wise copying to take+drop+memcpy. Un-XFAIL size-and-align.rs for rustc. 2011-03-11 13:44:24 -08:00
Graydon Hoare af4d6ae76b Add ABI tagging to crates, adjust rustc output and runtime stack-frame setup so access to argv works. 2011-02-22 16:37:27 -08:00
Brian Anderson c0f997be21 Revert EI_OSABI ELF header field back to 0 for Linux 2011-02-10 12:00:45 -08:00
Graydon Hoare 71e3ac873a Re-indent a bit of elf. 2011-02-09 11:37:56 -08:00
Graydon Hoare eb854ffb44 Add several 1-word .bss fragments for FreeBSD. 2011-02-09 11:37:56 -08:00
Graydon Hoare 60635999f3 Add .bss fragment support to elf. 2011-02-09 11:37:55 -08:00
Rob Arnold a1cc5ac63c Adapt elf.ml to handle differences between Linux and FreeBSD. 2011-02-09 11:37:20 -08:00
Graydon Hoare 26ecec4e12 Update frame logic to be compatible with SysV x86 ABI. Improves diagnostics. 2010-11-16 13:51:32 -08:00
Graydon Hoare 89946609f2 Support a special const-value refcount, use it for const strings. 2010-11-09 14:15:07 -08:00
Graydon Hoare f234750d80 Fix crasher in rustc. 2010-10-14 12:41:48 -07:00
Graydon Hoare 69ae63d4b0 Fix horribly embarassing signedness bug in backend, plus related regressions. 2010-10-12 16:51:27 -07:00
Graydon Hoare beb4c07e26 Git index wins again. 2010-10-12 12:28:46 -07:00
Graydon Hoare 76f7b043bc Changes to make rustboot compile on OCaml 3.12 2010-10-12 12:16:35 -07:00
Graydon Hoare caaf8679d8 Teach bind to actually bind typarams, as it claims to. 2010-10-10 00:14:26 -07:00
Graydon Hoare f956067867 Implement a -minimal mode prologue, cut 100kb from rustc. 2010-10-08 23:58:48 -07:00
Graydon Hoare facc5f8826 Make minimal-mode slightly less aggressive. 2010-10-07 18:21:06 -07:00
Graydon Hoare 8ecbe49a8f Add -minimal mode to rustboot that skips emitting code that's broken or unneeded for rustc. Shrink rustc by 300kb. Back under 1mb. 2010-10-05 18:44:39 -07:00
Graydon Hoare cdf67b1f2e Better backpointer logic. 2010-10-05 18:09:49 -07:00
Graydon Hoare b970563fe3 Patchwork of attempted fixes to effect system and gc system; eventually give up and disable it entirely in the runtime. Will need extensive reworking. 2010-09-29 17:22:13 -07:00
Graydon Hoare c5f4789d5b Bind pattern slots with ?, drop parens from 0-ary tag constructors, translate 0-ary constructors as constants. Rustc loses ~300kb. 2010-09-20 23:56:43 -07:00
Graydon Hoare 79dc07d648 Use hashtable rather than bitset for vreg constraints in ra; speeds compilation. 2010-09-09 18:56:51 -07:00
Graydon Hoare a9e2327a18 Switch tags to purely nominal, removing TY_iso and TY_idx. Seems to mostly work, possibly a little bumpy. Changes a lot. 2010-09-09 15:59:29 -07:00
Michael Bebenita de611a3090 Lots of design changes around proxies and message passing. Made it so that domains can only talk to other domains via handles, and with the help of the rust_kernel. 2010-09-07 18:44:12 -07:00
Roy Frostig 4e355aebf7 When vec growth results in a newly allocated (extended) buffer, copy existing elements over via element-wise copy, not flat memcpy. Introduce new vec growth glue to achieve this. 2010-09-03 16:18:32 -07:00
Graydon Hoare b90e6b93c1 Whitespace churn. 2010-08-31 14:36:51 -07:00
Graydon Hoare 7cfa7bdd23 Make vreg constrs per-quad, regfence on nontrivial constrs, back out workaround to _uint, add regression test. Closes #152. 2010-08-26 16:27:47 -07:00
Graydon Hoare ee04c0236c Add check to catch bug underlying issue #152. Fix will take longer. 2010-08-26 14:32:47 -07:00
Graydon Hoare 2c8ae5ca8d Add element to closure to hold captured tydesc (not body tydesc). 2010-08-25 16:36:18 -07:00
Graydon Hoare 8e0f486ea6 First pass of updating the in-memory layout of closures, for issue 81. 2010-08-25 14:42:28 -07:00
Graydon Hoare b2b72a08db Janitorial work on obj box / body / field terminology, following froystig's brave lead. 2010-08-25 12:08:05 -07:00
Patrick Walton b6b348a13c Export all item code to stabs on Windows (including e.g. object methods) 2010-08-19 16:50:18 -07:00
Patrick Walton 31aceda09e Export glue as stabs on Windows as well 2010-08-19 16:15:37 -07:00
Patrick Walton 09ebda7ce5 Add some mangled stabs to help debugging on Windows 2010-08-19 15:38:57 -07:00
Graydon Hoare 8149bb1411 Zero LMA/VMA of debug sections in elf. Closes #148. 2010-08-12 18:45:41 -07:00
Graydon Hoare 88d9a79ac8 Some ELF correctness issues, but apparently none enough to placate gdb. 2010-08-11 16:57:34 -07:00
Graydon Hoare 60e5ad384e Put out burning tinderbox on OSX. 2010-08-10 16:49:36 -07:00
Graydon Hoare 9f6dec9e13 Always bounce mul/div/mod ops. Closes #131 harder. 2010-08-10 16:03:58 -07:00
Roy Frostig 982dcc29bf Get object's captured typarams when calculating sizes in the backend's fn-prologue-generation for object methods. 2010-08-09 15:45:08 -07:00
Michael Bebenita 8395d46163 Changed seemingly incorrect stk_field_valgrind_id. 2010-08-09 07:01:20 -07:00
Graydon Hoare db561b52ff Degrade emitter size cache to just a flat hashtable with regular flushes (sigh) and re-introduce horrible bounce-off-spill hack for DIV, MUL, etc. 2010-08-05 17:44:35 -07:00
Graydon Hoare 29987b56e1 Move 'as' precedence up to just above relational; support indexing str and vec by all integral types. Closes #94. 2010-08-05 10:04:11 -07:00
Graydon Hoare 7595aca5e3 Kill the preallocator, install a sane replacement. Closes #131. And probably a lot of others. 2010-08-04 00:27:36 -07:00
Graydon Hoare d1a67574c6 Factor append_quad out of IL.emit_full, for use elsewhere. 2010-08-03 18:59:26 -07:00
Graydon Hoare c014748c01 Remove dead implicit-destinations logic from IL. 2010-08-03 18:52:49 -07:00
Graydon Hoare e85f6ca4d3 Patch up another place where the newly-expanded 'closure-ptr' implicit arg needs to be passed. Amazingly, it mostly-worked without this. On some platforms. 2010-07-30 19:14:42 -07:00
Graydon Hoare b7d7f70d09 Slight shaving on RA, no more optimizing today. It's fast enough for now. 2010-07-26 16:55:54 -07:00