Wolfgang (Blub) Bumiller
|
375cfd24b3
|
ast_loop - codegen dummied
|
2012-05-03 21:57:13 +02:00 |
|
Wolfgang (Blub) Bumiller
|
bbcd3f12de
|
Removing TODO-comment since it's done
|
2012-05-03 18:38:29 +02:00 |
|
Wolfgang (Blub) Bumiller
|
91bf040f0a
|
ast_function_label now takes a labelname to prefix the id with
|
2012-05-03 12:40:49 +02:00 |
|
Wolfgang (Blub) Bumiller
|
da9a4fef29
|
Type information moved to ast_expression from ast_value, every ast node should in theory know its type - it is important for dereferencing pointers or entity fields, to figure out the output type. Eg. so that ast_entfield knows what kind of OP_LOAD it needs to use
|
2012-05-03 12:12:22 +02:00 |
|
Wolfgang (Blub) Bumiller
|
4317f40fa5
|
ast_binary_codegen, ast_function_label (no I don't like sprintf...)
|
2012-05-02 23:11:39 +02:00 |
|
Wolfgang (Blub) Bumiller
|
13082112b0
|
create the ir_function in ast_function_codegen, keep the current ir_block stored in ast_function so inner codegens can use it
|
2012-05-02 19:25:25 +02:00 |
|
Wolfgang (Blub) Bumiller
|
314d45ff82
|
ast_local/global_codegen exposed through the header for now
|
2012-05-02 18:36:11 +02:00 |
|
Wolfgang Bumiller
|
1e0a688bc5
|
ast_ternary - contrary to ast_ifthen neither ontrue nor onfalse can be NULL, and it does output a value
|
2012-05-01 17:02:45 +02:00 |
|
Wolfgang Bumiller
|
5fe87e6a20
|
if-then-else AST node - this one is not for ternary expressions
|
2012-05-01 16:55:02 +02:00 |
|
Wolfgang Bumiller
|
3a94e962ae
|
codegen gets an lvalue flag now
|
2012-05-01 15:14:44 +02:00 |
|
Wolfgang Bumiller
|
281bd8657a
|
ast_entfield node
|
2012-05-01 15:08:54 +02:00 |
|
Dale Weiler
|
05966ee009
|
Remove trailing whitespace from everything
|
2012-04-28 16:43:39 -04:00 |
|
Wolfgang Bumiller
|
2a9b3c7877
|
ast_function gets a handle to its ir_function, ast_global_codegen to generate an ir global, or an ir_function
|
2012-04-28 20:55:41 +02:00 |
|
Wolfgang Bumiller
|
6145ecf7e0
|
ast_binary takes 2 expressions, not 2 values, ast_store takes a value and and expression for now until we support pointers, also: dropped the 'keep' param from ast_value_new, values are always to be stored somewhere to be deleted independently from their uses
|
2012-04-28 20:55:41 +02:00 |
|
Wolfgang Bumiller
|
0f38a560b6
|
ast_value and ast_function are linked together when using ast_function_new, note however, that neither will delete the other in their _delete functions.
|
2012-04-28 20:55:41 +02:00 |
|
Wolfgang Bumiller
|
75b78720fd
|
lex_ctx_t -> lex_ctx, vector_t -> vector
|
2012-04-28 11:15:29 +02:00 |
|
Dale Weiler
|
89ed723efa
|
astir.h -> gmqcc.h
|
2012-04-28 05:08:03 -04:00 |
|
Wolfgang Bumiller
|
1bf4aa379a
|
Header guards and macros get {} in oneline ifs and loops
|
2012-04-28 10:17:32 +02:00 |
|
Wolfgang (Blub) Bumiller
|
ce43a35307
|
ast_value_set_name to return bool
|
2012-04-27 13:32:52 +02:00 |
|
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
|
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
|
8d121af47c
|
Copyright notices
|
2012-04-25 17:27:49 +02:00 |
|
Wolfgang (Blub) Bumiller
|
eeced7f392
|
ast.h
|
2012-04-25 17:27:47 +02:00 |
|