Fixing bugs in the metaprogram
This commit is contained in:
@@ -1,5 +1,3 @@
|
||||
result = ""
|
||||
|
||||
sizes = ["64", "32", "16", "8"]
|
||||
types = ["S64", "U64", "F64"]
|
||||
print_sign = ["%lld", "%llu", "%f"]
|
||||
@@ -46,7 +44,7 @@ def update_file(filename, comment_name, data_to_write):
|
||||
|
||||
a_part = data[0:begin_index]
|
||||
b_part = data[begin_index:end_index]
|
||||
c_part = data[end_index:-1]
|
||||
c_part = data[end_index:len(data)]
|
||||
|
||||
data_to_write = begin + data_to_write + end
|
||||
|
||||
@@ -55,7 +53,8 @@ def update_file(filename, comment_name, data_to_write):
|
||||
|
||||
|
||||
|
||||
if False:
|
||||
if True:
|
||||
result = ""
|
||||
enum_members = []
|
||||
enum_members.append("BC_END_OF_INSTRUCTIONS")
|
||||
enum_members.append("BC_POP_STACK")
|
||||
@@ -90,6 +89,7 @@ if False:
|
||||
# Generate switch cases
|
||||
#
|
||||
if True:
|
||||
result = ""
|
||||
for sign, T in zip(print_sign, types):
|
||||
t = T.lower()
|
||||
|
||||
@@ -121,7 +121,7 @@ if True:
|
||||
{T} right = b->registers[instr->index_b].{t};
|
||||
{T} result = left {symbol} right;
|
||||
b->registers[instr->index_c].{t} = result;
|
||||
bc_log("r%s + r%s = r%s => [{sign}] {symbol} [{sign}] = [{sign}]", instr->index_a, instr->index_b, instr->index_c, left, right, result);
|
||||
bc_log("[r%s, {sign}] {symbol} [r%s, {sign}] = [r%s, {sign}]", instr->index_a, left, instr->index_b, right, instr->index_c, result);
|
||||
}}break;
|
||||
"""
|
||||
################################
|
||||
|
||||
Reference in New Issue
Block a user