about summary refs log tree commit diff
path: root/src/comp
AgeCommit message (Collapse)AuthorLines
2011-07-17rustc: Simplify the destination format in the DPS backend; optimize aliases ↵Patrick Walton-90/+103
to interior strings to require no allocation at all
2011-07-17rustc: Use memmove instructions more aggressively in DPS mode. LLVM converts ↵Patrick Walton-13/+74
these to optimized block transfer instructions, significantly reducing code size.
2011-07-16Make clear the differentiation between char pos and byte pos in filemaps. ↵Josh Matthews-34/+64
Fix up error printing for files with multi-byte characters.
2011-07-16Fix pre-existing problem with filemap line positions always starting at 0. ↵Josh Matthews-4/+12
Fix error line output to only retrieve up to the nearest newline.
2011-07-16Use the actual start position of the file in the codemap rather than the ↵Josh Matthews-4/+2
position of the first newline.
2011-07-16Reenable error line printing.Josh Matthews-2/+1
2011-07-16Fix error line display slicing.Josh Matthews-5/+7
2011-07-16rustc: Implement immediates in the DPS engine; it should now always be at ↵Patrick Walton-16/+49
least as efficient as the original engine (and typically much more).
2011-07-15rustc: Implement interior string logging in DPSPatrick Walton-3/+10
2011-07-15rustc: Implement logging in DPSPatrick Walton-9/+109
2011-07-15rustc: Translate literals in DPS style; no constification of strings yet.Patrick Walton-7/+174
2011-07-15rustc: Write names of local variables into the LLVM IR when debug mode is onPatrick Walton-0/+3
2011-07-15Merge the stage1,2,3.mk files into a common definition in stageN.mk, more ↵Graydon Hoare-2/+2
rearrangement of host/target libs.
2011-07-15gather_locals shouldn't descend down into fns and items.Michael Sullivan-1/+10
2011-07-15Convert gather_locals to use visit.Michael Sullivan-18/+21
2011-07-15rustc: Introduce a stub destination-passing-style translation engine, ↵Patrick Walton-15/+186
accessible via the --dps switch for now
2011-07-15rustc: Remove a bunch of exterior vectorsPatrick Walton-331/+302
2011-07-15Getting rid of unnecessary casts for objects.Lindsey Kuper-3/+0
Now that all objects are of rust_object_type in the wake of the LLVM type system rewrite, we don't need this cast anymore.
2011-07-14refactor: Move the task and communication-related translation functions to a ↵Eric Holk-284/+311
new module.
2011-07-14Make collect_upvars know about function args.Michael Sullivan-1/+6
Closes #697.
2011-07-14Generalize collect_upvars to work over any type of ast node.Michael Sullivan-7/+12
2011-07-14refactor: Move the LLVM type and constant constructors into a new module.Eric Holk-446/+511
2011-07-14Consolidate some arguments in typeck by just passing the record they came from.Michael Sullivan-12/+12
2011-07-14Factor out build_environment's code to find a variable in a function context.Michael Sullivan-18/+24
2011-07-14Factor out closure construction from trans_for_each.Michael Sullivan-14/+24
2011-07-14Fix array out of bounds index in load_environment.Michael Sullivan-3/+3
Closes #696.
2011-07-14rustc: Move metadata::encoder over to interior vectorsPatrick Walton-52/+56
2011-07-14Add a facility for ignoring tests. Issue #428Brian Anderson-8/+31
Adding the #[ignore] attribute will cause the test not to be run, though it will still show up in the list of tests.
2011-07-14Fix long line.Graydon Hoare-1/+2
2011-07-14Move rustc to the new llvm type system. Requires an update to llvm trunk.Rafael Ávila de Espíndola-55/+40
2011-07-14rustc: Move much of metadata reading over to interior vectorsPatrick Walton-336/+337
2011-07-14rustc: First stab at interior string literals, untested as of yetPatrick Walton-12/+86
2011-07-14The test runner's main returns unit, not int. Issue #428Brian Anderson-1/+1
The appropriate way to indicate failure from main is to fail.
2011-07-14Revert "Allow main to return int"Brian Anderson-4/+1
This reverts commit 8c94d8fd54ba864e6a603ba6d90d41ccfaa62f53. There's no mechanism to actually return the value from main, so all this does is allow main -> int to compile. Per #688, the program returns non-zero on failure, so it's not obvious that this change is appropriate at this time.
2011-07-14Flag --test implies '--cfg test'. Issue #428Brian Anderson-6/+59
So certain code can be conditionally compiled only when building for testing
2011-07-14Keep a pointer to rust_object_type.Rafael Ávila de Espíndola-7/+9
2011-07-14Main part of the type system rewrite:Rafael Ávila de Espíndola-75/+87
Change the type of all objects to be { {}*, {}* }.
2011-07-13Allow main to return intBrian Anderson-1/+4
2011-07-13Make resolve and the typechecker check for a main fn of theTim Chevalier-10/+77
correct type This means if a non-library program leaves out the main program, the error gets caught earlier than link. Closes #626.
2011-07-13rustc: Remove some interior vectors from ty, except the ones that I think ↵Patrick Walton-35/+8
were causing crashes before
2011-07-13Small cleanups that were missing in the last patch.Rafael Ávila de Espíndola-4/+3
2011-07-13Next step in the type system change. Add task_type to the context.Rafael Ávila de Espíndola-37/+43
2011-07-13rustc: Remove exterior vectors from resolve againPatrick Walton-29/+26
This reverts commit 6390c43dc465b7c89eb542855bdfe12103ee330f.
2011-07-13First step in the typesystem rewrite:Rafael Ávila de Espíndola-84/+84
Create the typedesc type in one place. That is where it will be named.
2011-07-13Prohibit trailing whitespace under 'tidy' script. Clean up all caught cases.Graydon Hoare-210/+210
2011-07-13Use more precise spans in error messages for bad FRU exprsTim Chevalier-9/+15
The type error message for an expression using FRU where a field expression had the wrong type was using the span for the entire expression. Fixed it to use the span for the individual field. Closes #628.
2011-07-13Parse nullary ret correctlyTim Chevalier-9/+7
ret is similar to fail: if not followed by an expression, it should be parsed as a ret without an argument. The old version would fail if ret was followed by a close paren (for example). Fixed it. Closes #676.
2011-07-13Add some missing cases to token::can_begin_exprTim Chevalier-0/+4
2011-07-13Refactor out some repetetive code in trans_altMarijn Haverbeke-59/+46
2011-07-13Add box patternsMarijn Haverbeke-13/+56
An @ can now be prepended to a pattern to unbox something during pattern matching. Closes #661