206 Commits

Author SHA1 Message Date
Noah
bf1e9832f7 Make compiler/porcelain no_std compatible 2021-01-14 12:48:54 -06:00
Noah
d375710650 Make compiler no_std compatible 2021-01-14 12:45:32 -06:00
Noah
56c225c748 Use ahash/phf in parser 2021-01-08 17:09:09 -06:00
Noah
688880c540 Use ahash in the compiler 2021-01-08 17:00:23 -06:00
Noah
559123c617 Don't push something on the stack when starting a generator 2020-12-23 17:40:33 -06:00
Noah
2123df6017 Don't keep a separate blockorder vec 2020-12-21 18:49:00 -06:00
Noah
8f536b986d Use boxvec for frame.stack 2020-12-21 18:48:56 -06:00
Noah
32a1dd60be Have a block-based IR for compiling, calculate max stack size 2020-12-21 18:47:58 -06:00
Noah
a5d45124fd Update other stuff to use the root of rustpython_bytecode 2020-12-19 14:59:07 -06:00
Noah
1be79c93b0 Make Instruction only 8 bytes 2020-12-14 15:55:47 -06:00
Noah
e87144e2c5 Add flags to the MakeFunction instruction 2020-12-14 14:35:17 -06:00
Noah
9c895c268a Add label_arg{,_mut} methods 2020-12-14 14:25:20 -06:00
Noah
f93934f0c6 Make Continue have the target it's continuing to 2020-12-14 14:25:19 -06:00
Noah
3280a1655a Optimize the size of Instruction 2020-12-14 14:25:19 -06:00
Noah
43860902e6 Import ConstantData in compile.rs 2020-12-14 14:25:19 -06:00
Noah
34bb5f0d7a Apply review suggestions 2020-12-05 16:36:38 -06:00
Noah
22e76f1a67 Use a boxed slice for codeobject fields 2020-12-05 16:36:37 -06:00
Noah
7c58f4a0c8 Fast locals part 3 2020-12-05 16:36:35 -06:00
Noah
92b8e59158 Fast locals part 2 2020-12-05 16:36:00 -06:00
Noah
97029af713 Fast locals part 1 2020-12-05 16:36:00 -06:00
Noah
479610f3cb Move compiler snapshots 2020-12-05 16:36:00 -06:00
Noah
085a9d4f5e Don't use a wildcard to prevent future mistakes 2020-11-24 11:57:14 -06:00
Noah
6082049cab Remove the need for a label_map in CodeObject 2020-11-23 14:41:56 -06:00
Noah
2f232ecbe3 Implement string interning for variable names 2020-11-09 15:51:57 -06:00
Noah
4528f17210 compiler/porcelain wrapper 2020-11-07 15:43:23 -06:00
Noah
b3851c8eb8 Split the ast from the parser, remove compiler dep on parser 2020-11-07 15:43:23 -06:00
Noah
b7a73fdc0c Capitalize boolean constants for dis 2020-10-30 14:05:53 -05:00
Noah
df28c022e1 Use disassembly for snapshot testing 2020-10-19 23:55:56 -05:00
Noah
0b36b14a00 Remove optimization unit test 2020-10-19 23:55:56 -05:00
Noah
a665edc421 Fix clippy lints 2020-10-19 23:55:55 -05:00
Noah
4c8fdc49c7 Update compiler to output codeobj.constants, use insta for snapshot testing 2020-10-19 23:55:55 -05:00
Tom Schuster
023bf6c3ba Basic block support in JIT 2020-10-17 17:42:02 +02:00
Noah
eb584816f9 Fix __class__ nonlocal resolution 2020-10-07 19:33:11 -05:00
Noah
3feb26a7ab Fix accessing __doc__ while inside a class definition 2020-10-07 19:28:19 -05:00
Jeong YunWon
3cd0a1118d Fix nightly clippy 2020-10-01 07:08:55 +09:00
Jeong YunWon
9e78ec9ef9 Fix dis.dis to prints inner constant codes like CPython 2020-09-21 06:09:55 +09:00
minoring
e24a723ee1 Refactor checks for symbol in register_name 2020-09-06 11:40:32 +09:00
minoring
dadf430c75 Modify nonlocal to be declared multiple times
Related to #2183
2020-09-05 22:42:52 +09:00
minoring
4a0ee1d253 Fix nonlocal checks
Related to #2189
2020-09-05 22:41:24 +09:00
Noah
1385c06e25 Fix some minor things required for unittest 2020-08-12 16:03:20 -05:00
Yiqun Ling
230f91582f Add nested and optimized for symtable 2020-08-13 04:12:28 +09:00
Noah
3a6442f63f Merge pull request #2006 from Lynskylate/try-to-use-local
Use loadname local replace loadname free
2020-08-11 10:13:35 -05:00
Jeong YunWon
7f3fa70d10 clean up PyComplex 2020-08-09 21:46:16 +09:00
lynskylate
36e7e9cded Fix load context 2020-08-08 13:08:13 +08:00
lynskylate
edc727f44f Fix scope error 2020-08-08 01:53:13 +08:00
lynskylate
fd11b64cee Merge remote-tracking branch 'origin/master' into try-to-use-local 2020-08-07 01:18:56 +08:00
lynskylate
7e69e5ef2c Fix scope change 2020-08-02 03:43:19 +08:00
lynskylate
0d83cab37a Optimize code 2020-08-01 02:05:44 +08:00
Yiqun Ling
12df480cc9 Apply suggestions from code review
Co-authored-by: Jeong YunWon <youknowone@users.noreply.github.com>
2020-08-01 01:29:11 +08:00
lynskylate
96a0ea9487 Merge remote-tracking branch 'origin/master' into feature-symtable 2020-07-31 02:12:41 +08:00