Commit graph

2483 commits

Author SHA1 Message Date
Wolfgang (Blub) Bumiller
fdc98383d1 Adding a 'keep' bool to nodes: Generally, destroying an AST node should destroy all its child-nodes, global variables get 'keep' to be true to avoid them being deleted together with expressions they're used in. 2012-04-26 11:45:22 +02:00
Wolfgang (Blub) Bumiller
1a917a2659 Introduce an ast_store rather than splitting ast_binary 2012-04-26 11:36:46 +02:00
Wolfgang (Blub) Bumiller
06bdc46864 Use .o rather than .c in the Makefile... sorry for that mistake 2012-04-26 11:36:28 +02:00
Wolfgang (Blub) Bumiller
41a39125be ast_binary_new to initialize codegen function ptr, codegen proto for store and binary ast nodes 2012-04-26 10:38:00 +02:00
Wolfgang (Blub) Bumiller
c692794eb5 block and value codegen protos 2012-04-26 10:28:50 +02:00
Wolfgang (Blub) Bumiller
13ec68bc4f qbool -> bool 2012-04-26 10:16:15 +02:00
Wolfgang (Blub) Bumiller
234567cb9f Merge branch 'master' into blub/ast-and-ir-merging
-> Todo: take over bool from qbool
2012-04-26 10:13:07 +02:00
Dale Weiler
4c55dba10d Implemented platform[safe, neutral], compiler[safe, neutral] and C version[safe, neutral] <stdbool.h>. M$ Visual Studio doesn't provide support for C99 2012-04-25 17:03:56 -04:00
Dale Weiler
1fd2666fba code_strings_add replaced with proper multiplie element insertion vector support just added 2012-04-25 16:49:04 -04:00
Dale Weiler
fe5c322e38 Implemented support for multiple element (with assisted length) insertion on VECTOR_ expansions 2012-04-25 16:43:25 -04:00
Dale Weiler
e6ac367179 Make VECTOR_ more flexible for inside structures, and such. 2012-04-25 15:49:20 -04:00
Dale Weiler
168fd244bd TYPE_ macros 2012-04-25 11:45:01 -04:00
Dale Weiler
b102e77dca s/#define / / & s/[0-9]// & inplace enum { - end } 2012-04-25 11:42:20 -04:00
Wolfgang (Blub) Bumiller
8d121af47c Copyright notices 2012-04-25 17:27:49 +02:00
Wolfgang (Blub) Bumiller
6ba195bcfe todo note 2012-04-25 17:27:49 +02:00
Wolfgang (Blub) Bumiller
418430e05d Get stuff ready to compile - #if 0 on instructions not yet added to the instruction list (eg integer ones) 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
ef024e5b80 use CC ?= because clang crashes on me 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
522738de48 Adding liferange-calculation used later for templ-allocateion 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
095d403acc more weak typing 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
08f6e65b1c _naive_ phi solver 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
d1ce8de3e4 ifalse->false and true again, binop code 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
adb1ab6ce2 A few of the main IR operation implementations 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
8dd593b306 removed an old vector related function 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
e0cd68c72a ir.c: ir_value and style fixups 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
be620ff431 Same style fixups for ir_instr 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
38532ceb11 ir.c: ir_instr 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
dbe1b56f48 Same style fixup for ir_block as previous commits for function 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
2e0feca040 ir.c: importing ir_block 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
334e587c30 filecontext_t -> lex_ctx_t, removing some const 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
9343936082 space idnentation, macros, strdup again 2012-04-25 17:27:48 +02:00
Wolfgang (Blub) Bumiller
9b6cfcb80f ir.c: importing ir_function 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
86bed959d4 Space indentation in ir.c builder part 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
356a16820a macros, strdup->util_strdup, malloc->mem_a 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
1cc0cfdcec importing from ir_builder.c -> ir.c 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
eeced7f392 ast.h 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
22fcf399e0 Adding the 3 virtual instructions required for the IR later. 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
42d9ff3563 Remove some underscores 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
ce3eac4612 Vector macros 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
0b374daceb Adopting space indentation in ir.h 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
727698e9f7 Importing ir.h 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
392fc2227f Removed unnecessary line 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
3b407fdc07 Space indentation for ast->ir part 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
a82083bc78 i{false,true} -> {false,true} 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
6236a0c464 Adding from astcodegen.c 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
e9b581adfb style-fix 2012-04-25 17:27:47 +02:00
Wolfgang (Blub) Bumiller
c520a32444 use the actual VECTOR macros 2012-04-25 17:27:46 +02:00
Wolfgang (Blub) Bumiller
2cc27af146 filecontext_t -> lex_ctx_t 2012-04-25 17:27:46 +02:00
Wolfgang (Blub) Bumiller
56f548cc6f strdup -> util_strdup, _name -> name 2012-04-25 17:27:46 +02:00
Wolfgang (Blub) Bumiller
57d3da0ebb Adopting space-indentation 2012-04-25 17:27:46 +02:00
Wolfgang (Blub) Bumiller
40f70d075e Importing ast.c 2012-04-25 17:27:46 +02:00