[Subversion] / BytecodeAssembler / README.txt  

Log of /BytecodeAssembler/README.txt

Parent Directory

No default branch
Bookmark a link to HEAD: (view) (download)


Revision 2782 - (view) (download) - [select for diffs]
Modified Wed Feb 22 16:11:55 2017 UTC (7 years, 1 month ago) by pje
File length: 105382 byte(s)
Diff to previous 2768 , to selected 2732
Fix BUILD_CLASS stack calculation

Revision 2768 - (view) (download) - [select for diffs]
Modified Thu Apr 9 17:40:32 2015 UTC (8 years, 11 months ago) by pje
File length: 105243 byte(s)
Diff to previous 2745 , to selected 2732
Add 3.x slice support; fix misc. shallow test failures

Revision 2745 - (view) (download) - [select for diffs]
Modified Sat Apr 4 05:58:18 2015 UTC (8 years, 11 months ago) by pje
File length: 105162 byte(s)
Diff to previous 2732
BINARY_DIVIDE and UNARY_CONVERT for Python 3

Revision 2732 - (view) (download) - [selected]
Modified Sat Apr 4 00:47:53 2015 UTC (8 years, 11 months ago) by pje
File length: 105015 byte(s)
Diff to previous 2631
Improved Python 3 compatibility for tests

Revision 2631 - (view) (download) - [select for diffs]
Modified Mon Aug 2 19:34:21 2010 UTC (13 years, 7 months ago) by pje
File length: 104737 byte(s)
Diff to previous 2630 , to selected 2732
Work around a test failure on 2.3 due to peephole optimization

Revision 2630 - (view) (download) - [select for diffs]
Modified Mon Aug 2 19:27:33 2010 UTC (13 years, 7 months ago) by pje
File length: 104730 byte(s)
Diff to previous 2629 , to selected 2732
Full 2.7 support!

Revision 2629 - (view) (download) - [select for diffs]
Modified Mon Aug 2 19:08:08 2010 UTC (13 years, 7 months ago) by pje
File length: 102336 byte(s)
Diff to previous 2628 , to selected 2732
Bump version

Revision 2628 - (view) (download) - [select for diffs]
Modified Mon Aug 2 18:31:16 2010 UTC (13 years, 7 months ago) by pje
File length: 102146 byte(s)
Diff to previous 2626 , to selected 2732
Clean tests!

Revision 2626 - (view) (download) - [select for diffs]
Modified Mon Aug 2 17:56:52 2010 UTC (13 years, 7 months ago) by pje
File length: 101995 byte(s)
Diff to previous 2624 , to selected 2732
Switch to symbolic disassembly, so we can mask 2.6/2.7 differences.

Revision 2624 - (view) (download) - [select for diffs]
Modified Mon Aug 2 07:59:50 2010 UTC (13 years, 7 months ago) by pje
File length: 100740 byte(s)
Diff to previous 2620 , to selected 2732
Bump version, add release notes

Revision 2620 - (view) (download) - [select for diffs]
Modified Mon Aug 2 07:06:28 2010 UTC (13 years, 7 months ago) by pje
File length: 100227 byte(s)
Diff to previous 2575 , to selected 2732
Fixup tests to run clean on 2.6.

Revision 2575 - (view) (download) - [select for diffs]
Modified Tue Aug 12 18:09:37 2008 UTC (15 years, 7 months ago) by pje
File length: 100176 byte(s)
Diff to previous 2573 , to selected 2732
Fix incorrect stack size calculation for ``MAKE_CLOSURE`` on Python 2.5+

Revision 2573 - (view) (download) - [select for diffs]
Modified Mon Aug 4 22:17:03 2008 UTC (15 years, 7 months ago) by pje
File length: 99700 byte(s)
Diff to previous 2571 , to selected 2732
Fix broken closure-building on Python 2.4/2.3

Revision 2571 - (view) (download) - [select for diffs]
Modified Mon Aug 4 21:47:49 2008 UTC (15 years, 7 months ago) by pje
File length: 99741 byte(s)
Diff to previous 2473 , to selected 2732
Add ListComp, LCAppend, If, Function, For, UnpackSequence,
LocalAssign, YieldStmt, nested scopes, Code.from_spec(),
and more.  See README for details. 

Revision 2473 - (view) (download) - [select for diffs]
Modified Sun Jan 6 15:30:01 2008 UTC (16 years, 2 months ago) by pje
File length: 77204 byte(s)
Diff to previous 2460 , to selected 2732
Prep for release, and fix a spurious test failure w/2.3

Revision 2460 - (view) (download) - [select for diffs]
Modified Sun Dec 30 20:58:50 2007 UTC (16 years, 3 months ago) by pje
File length: 76867 byte(s)
Diff to previous 2459 , to selected 2732
Oops.

Revision 2459 - (view) (download) - [select for diffs]
Modified Sun Dec 30 20:58:03 2007 UTC (16 years, 3 months ago) by pje
File length: 76868 byte(s)
Diff to previous 2457 , to selected 2732
Fix stack level tracking for "try" block of try/except:
the POP_BLOCK *always* resets the stack to its original
size, so the stack level prior to the POP_BLOCK must be
ignored.

Revision 2457 - (view) (download) - [select for diffs]
Modified Sun Dec 30 20:10:36 2007 UTC (16 years, 3 months ago) by pje
File length: 75401 byte(s)
Diff to previous 2453 , to selected 2732
Added TryFinally, TryExcept, Suite, and made Suite([])
return Pass.  Documented Pass.

Revision 2453 - (view) (download) - [select for diffs]
Modified Sat Dec 29 19:29:57 2007 UTC (16 years, 3 months ago) by pje
File length: 72167 byte(s)
Diff to previous 2451 , to selected 2732
Cleanup wide-address jumps to allow code size>64K, as long
as the jump target is known.  Forward jumps are limited to
jumping over a maximum span of 64K bytes.  (This was always
true, but bad code could be generated before, whereas now
an assertion error is raised if the maximum span is exceeded.)

Revision 2451 - (view) (download) - [select for diffs]
Modified Sat Dec 29 18:38:07 2007 UTC (16 years, 3 months ago) by pje
File length: 72032 byte(s)
Diff to previous 2234 , to selected 2732
Add Getattr() node type, fix co_filename bug in
Code.from_function().

Revision 2234 - (view) (download) - [select for diffs]
Modified Sun Sep 3 19:31:05 2006 UTC (17 years, 6 months ago) by pje
File length: 70591 byte(s)
Diff to previous 2231 , to selected 2732
Added ``And`` and ``Or`` node types.

Revision 2231 - (view) (download) - [select for diffs]
Modified Sun Sep 3 17:56:29 2006 UTC (17 years, 6 months ago) by pje
File length: 68571 byte(s)
Diff to previous 2230 , to selected 2732
Added ``Pass`` and ``Compare`` node types, and ``COMPARE_OP`` can now 
take an operator name instead of a number.

Revision 2230 - (view) (download) - [select for diffs]
Modified Sun Sep 3 15:57:44 2006 UTC (17 years, 6 months ago) by pje
File length: 64949 byte(s)
Diff to previous 2210 , to selected 2732
Nix trailing ',' from repr() of nodes.

Revision 2210 - (view) (download) - [select for diffs]
Modified Wed Jul 5 05:56:42 2006 UTC (17 years, 8 months ago) by pje
File length: 64955 byte(s)
Diff to previous 2209 , to selected 2732
Bump version, fix doc typos.

Revision 2209 - (view) (download) - [select for diffs]
Modified Wed Jul 5 05:46:10 2006 UTC (17 years, 8 months ago) by pje
File length: 64950 byte(s)
Diff to previous 2208 , to selected 2732
All node types now descend from a ``Node`` base type.  Updated TODO.

Revision 2208 - (view) (download) - [select for diffs]
Modified Wed Jul 5 02:56:05 2006 UTC (17 years, 8 months ago) by pje
File length: 65419 byte(s)
Diff to previous 2205 , to selected 2732
Constant handling has been fixed so that it doesn't confuse equal values of
differing types (e.g. ``1.0`` and ``True``), or equal unhashable objects
(e.g. two empty lists).

Removed ``nil`, ``ast_curry()`` and ``folding_curry()``, replacing them with
the ``nodetype()`` decorator and ``fold_args()``; please see the docs for
more details.

DecoratorTools is required now also.

Revision 2205 - (view) (download) - [select for diffs]
Modified Tue Jul 4 22:21:25 2006 UTC (17 years, 8 months ago) by pje
File length: 62312 byte(s)
Diff to previous 2198 , to selected 2732
Added stack tracking across jumps, globally verifying stack level prediction
consistency and rejecting dead code.  It should now be impossible to 
generate unreachable code or code with inconsistent stack levels.

Revision 2198 - (view) (download) - [select for diffs]
Modified Tue Jun 20 01:34:07 2006 UTC (17 years, 9 months ago) by pje
File length: 56998 byte(s)
Diff to previous 2194 , to selected 2732
Simplify constant folding by using partial evaluation.  This makes it 
trivial to do simple constant folding for new node types and ensures 
that the results are consistent with the code that would've been 
generated in the non-folded cases.

Revision 2194 - (view) (download) - [select for diffs]
Modified Sat Jun 17 06:19:20 2006 UTC (17 years, 9 months ago) by pje
File length: 55335 byte(s)
Diff to previous 2193 , to selected 2732
Bump version to 0.1, update readme, minor cleanup.

Revision 2193 - (view) (download) - [select for diffs]
Modified Sat Jun 17 04:44:52 2006 UTC (17 years, 9 months ago) by pje
File length: 54364 byte(s)
Copied from: BytecodeAssembler/peak/util/assembler.txt revision 2191
Diff to previous 2191 , to selected 2732
Move docs and tests to README.txt.

Filename: BytecodeAssembler/peak/util/assembler.txt
Revision 2191 - (view) (download) - [select for diffs]
Modified Sat Jun 17 04:37:36 2006 UTC (17 years, 9 months ago) by pje
File length: 53829 byte(s)
Diff to previous 2190 , to selected 2732
Major update: lots of docs, block support, loops, break, continue,
exception handling, pseudo-"switch" statement demo, .label() renamed to 
.here(), constant folding, const_value() API, NotAConstant exception.

Filename: BytecodeAssembler/peak/util/assembler.txt
Revision 2190 - (view) (download) - [select for diffs]
Modified Fri Jun 16 05:56:11 2006 UTC (17 years, 9 months ago) by pje
File length: 35654 byte(s)
Diff to previous 2188 , to selected 2732
Major doc upgrade and new features: Return() nodes, code() accepts 
multiple args, and forward references can be used as code generation 
targets.  Booleans are now treated as constants.  Local() vars can now 
be references to cell/free variables, and free/cell index lookup is
fixed.  ``curry()`` is now ``ast_curry()``, and handles ``None`` 
arguments by replacing them with  special ``nil`` objects, correcting 
the problem of naively using ``None`` for AST child nodes.  And the 
documentation now covers virtually all of the package's current 
functionality.

Filename: BytecodeAssembler/peak/util/assembler.txt
Revision 2188 - (view) (download) - [select for diffs]
Modified Thu Jun 15 06:19:17 2006 UTC (17 years, 9 months ago) by pje
File length: 23122 byte(s)
Diff to previous 2187 , to selected 2732
Mark tests that fail under Python 2.3, and explain why.

Filename: BytecodeAssembler/peak/util/assembler.txt
Revision 2187 - (view) (download) - [select for diffs]
Modified Thu Jun 15 06:05:27 2006 UTC (17 years, 9 months ago) by pje
File length: 23050 byte(s)
Diff to previous 2160 , to selected 2732
Refactor the high-level API: it's now .return_() instead of .Return(),
Local() has to be used to load local variables, and virtually any 
immutable type (including strings and None) can now be used for direct 
value generation.  The high-level APIs now curry themselves so that ASTs 
can be used as dictionary keys (useful for identifying common 
subexpressions, as PEAK-Rules will need to do).

Also, added lots of documentation (although there's still quite a lot 
left to write), and fixed a couple of bugs.

Filename: BytecodeAssembler/peak/util/assembler.txt
Revision 2160 - (view) (download) - [select for diffs]
Modified Sun May 28 22:38:22 2006 UTC (17 years, 10 months ago) by pje
File length: 12937 byte(s)
Diff to previous 2139 , to selected 2732
Code generation, function cloning, code flags support, some
work on closures.

Filename: BytecodeAssembler/peak/util/assembler.txt
Revision 2139 - (view) (download) - [select for diffs]
Modified Tue May 23 05:28:31 2006 UTC (17 years, 10 months ago) by pje
File length: 6874 byte(s)
Copied from: RuleDispatch/src/dispatch/assembler.txt revision 2115
Diff to previous 2112 , to selected 2732
Spin off RuleDispatch's bytecode assembler into a separate project.

Filename: RuleDispatch/src/dispatch/assembler.txt
Revision 2112 - (view) (download) - [select for diffs]
Modified Thu Dec 22 05:26:05 2005 UTC (18 years, 3 months ago) by pje
File length: 6660 byte(s)
Diff to previous 2111 , to selected 2732
Added jumps, labels, and backpatching forward references, all of which 
turned out to be easier to do than I expected, as long as we assume 
the total code size is <64K.  At this point, the assembler probably has 
everything it will need for doing generic function stuff, so I probably 
won't bother with any special support for loops or try: blocks, or for 
that matter nested scopes.  At some point, the <64K limit for jump 
handling may need to be fixed, though, if we ever generate big enough 
generic functions.  (Which assumes I ever manage to generate something 
useful with this module in the first place, which is not a given at
this point.)

Filename: RuleDispatch/src/dispatch/assembler.txt
Revision 2111 - (view) (download) - [select for diffs]
Added Mon Dec 19 07:32:17 2005 UTC (18 years, 3 months ago) by pje
File length: 5645 byte(s)
Diff to selected 2732
Preliminary draft of an "assembler" for Python bytecode, to be used
in later code generation of generic functions.  The only features
missing at this point are jumps, block management, and nested scope
support.  Docs are also sketchy as yet, but I wanted to get a snapshot 
into source control before I stop work on it for now.  See assembler.txt 
for examples of what's implemented so far.

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

  Diffs between and
  Type of Diff should be a

Sort log by:

cvs-admin@eby-sarna.com

Powered by ViewCVS 1.0-dev

ViewCVS and CVS Help