Goose  Diff

Differences From Artifact [fe6307ff7a]:

  • File bs/execute/termaddr.cpp — part of check-in [26c691ecb9] at 2021-01-02 18:24:23 on branch trunk — Yet one more reference/address refactor: each calculation step (getting temp addr, getting var addr, selecting a member) is now a separate cir instruction. We need this level of generalization to be able to obtain addresses from anywhere, including variables and function parameters. (user: achavasse size: 664)

To Artifact [b05510ba59]:

  • File bs/execute/termaddr.cpp — part of check-in [1ad61a2717] at 2021-11-11 20:05:58 on branch trunk — Refactored the code builder: it is now carried around as a Value, and accessed through a bunch of extension points, so we can have different builders (and even user defined ones) later to make classes etc. (user: zlodo size: 634)

1
2
3
4
5
6
7
8
9
10
#include "execute.h"
#include "builtins/builtins.h"
#include "builtins/helpers.h"

using namespace goose;
using namespace goose::execute;
using namespace goose::builtins;

const Term& Bridge< eir::Term* >::Type()
{


<







1
2

3
4
5
6
7
8
9
#include "execute.h"
#include "builtins/builtins.h"


using namespace goose;
using namespace goose::execute;
using namespace goose::builtins;

const Term& Bridge< eir::Term* >::Type()
{