Commit Graph

77 Commits

Author SHA1 Message Date
Michael McLoughlin
4dc909a81e remove unused struct field 2018-12-08 22:16:09 -08:00
Michael McLoughlin
271670c14c avogen: make mov generator deterministic 2018-12-08 22:14:30 -08:00
Michael McLoughlin
20525e1437 get the basic add example working 2018-12-08 22:02:02 -08:00
Michael McLoughlin
5431f2edef support signatures and param load/stores 2018-12-08 21:16:03 -08:00
Michael McLoughlin
69ee0e39cb parameter loading 2018-12-08 20:14:51 -08:00
Michael McLoughlin
bbbf6399a1 gotypes: saving progress (temporarily broken tests) 2018-12-07 18:37:42 -08:00
Michael McLoughlin
c86ef5ecae gotypes 2018-12-06 21:58:51 -08:00
Michael McLoughlin
676ec39c51 add Symbol type to operand 2018-12-06 17:26:33 -08:00
Michael McLoughlin
e42eb1fb8c fix go get command 2018-12-05 00:56:02 -08:00
Michael McLoughlin
ceca3612c6 add go get to bootstrap 2018-12-05 00:53:16 -08:00
Michael McLoughlin
00c50be004 enable some more linters 2018-12-05 00:49:12 -08:00
Michael McLoughlin
fa18d7229f address some lint 2018-12-05 00:27:42 -08:00
Michael McLoughlin
022cbb7792 pass: first attempt at register allocation 2018-12-05 00:05:57 -08:00
Michael McLoughlin
9376a230cf refactor to use reg.Set 2018-12-03 22:39:43 -08:00
Michael McLoughlin
faafa00e40 pass: test for liveness 2018-12-03 20:40:43 -08:00
Michael McLoughlin
b52c67f3fb pass: naive implementation of liveness 2018-12-02 23:59:29 -08:00
Michael McLoughlin
7d4e18f4f4 ast: {Input,Output}Registers() 2018-12-02 22:29:30 -08:00
Michael McLoughlin
59548ee9f6 rename some register types 2018-12-02 21:35:33 -08:00
Michael McLoughlin
96a5c5fe1e ctors: include implicit inputs/outputs 2018-12-02 21:12:56 -08:00
Michael McLoughlin
82b31fa0da wip: adding instruction inputs and outputs 2018-12-02 17:57:12 -08:00
Michael McLoughlin
f18271ada5 add reg.Type 2018-12-02 15:15:00 -08:00
Michael McLoughlin
bc7d0fa410 pass: cfg tests 2018-12-02 13:51:03 -08:00
Michael McLoughlin
43575d8b61 start at some basic passes 2018-12-02 13:51:03 -08:00
Michael McLoughlin
0ceb1c55a4 Update README.md 2018-11-30 21:57:14 -08:00
Michael McLoughlin
0582a1884c travis: remove -v from go test 2018-11-30 21:48:37 -08:00
Michael McLoughlin
7ab57635f6 start a lint script 2018-11-30 21:47:10 -08:00
Michael McLoughlin
0ba8a60ea5 add label type 2018-11-30 21:37:17 -08:00
Michael McLoughlin
241b5ea673 some command line flags for builders 2018-11-30 20:58:51 -08:00
Michael McLoughlin
9b9f5b7e0c first pass at a "builder" interface 2018-11-30 20:43:31 -08:00
Michael McLoughlin
b65b6c02b8 return a basic instruction object 2018-11-27 22:38:53 -08:00
Michael McLoughlin
23289963d9 ctorstest: some more variants 2018-11-27 22:11:45 -08:00
Michael McLoughlin
4395adacc8 x86: rel types and generated tests 2018-11-27 22:08:11 -08:00
Michael McLoughlin
3881907ec8 implement vm{32,64}{x,y} operand checks 2018-11-26 23:53:07 -08:00
Michael McLoughlin
0ec52ceaa8 add IsM* operand checks 2018-11-26 23:35:26 -08:00
Michael McLoughlin
3050882621 start to implement operand types and checks 2018-11-26 22:14:36 -08:00
Michael McLoughlin
bed7e7e2c2 stub operand checks 2018-11-26 10:13:04 -08:00
Michael McLoughlin
767b625fe8 add generated code 2018-11-25 22:03:45 -08:00
Michael McLoughlin
af02be06ba add skeleton for instruction constructors 2018-11-25 21:50:46 -08:00
Michael McLoughlin
4dcfed6e16 add instruction arities function 2018-11-25 18:25:51 -08:00
Michael McLoughlin
09848512cc add -bootstrap option to avogen 2018-11-25 17:11:24 -08:00
Michael McLoughlin
b99b2cdbbf script to run code generation 2018-11-25 17:00:14 -08:00
Michael McLoughlin
0694ebab9b ensure all stdlib opcodes are present 2018-11-25 16:22:02 -08:00
Michael McLoughlin
6d3e3be578 generate test to ensure code generation worked 2018-11-24 17:53:17 -08:00
Michael McLoughlin
0edbdb064f supporting more instructions seen in stdlib 2018-11-24 17:32:18 -08:00
Michael McLoughlin
124587f55c fix go version in .travis.yml 2018-11-24 16:21:28 -08:00
Michael McLoughlin
e02e8491ca basic travis 2018-11-24 16:17:49 -08:00
Michael McLoughlin
a70227cbe3 test for stdlib opcodes 2018-11-24 14:55:51 -08:00
Michael McLoughlin
898d66c585 test asmtest with instruction list 2018-11-24 14:20:04 -08:00
Michael McLoughlin
bec73ca7a1 basic instruction properties 2018-11-24 14:08:55 -08:00
Michael McLoughlin
70dcf2b611 generate the instruction table 2018-11-24 13:47:30 -08:00