Goose  Diff

Differences From Artifact [ae6ffb875e]:

  • File bs/builtins/types/runtime/pointer.cpp — part of check-in [cc380f4f8f] at 2020-01-22 22:14:16 on branch trunk — Standardized the way type values are encoded to make room for an optional pointer to a list of predicates for refinement types. (user: achavasse size: 2926)

To Artifact [196c3b7e53]:

  • File bs/builtins/types/runtime/pointer.cpp — part of check-in [4edaeb8115] at 2020-07-09 21:33:54 on branch llr-stack-language — Starting a new branch to turn the llr into a stack language, still structured as a cfg. Cut off the llvm backend from the build for now. (user: achavasse size: 2964)

24
25
26
27
28
29
30

31

32
33
34
35
36
37
38
24
25
26
27
28
29
30
31

32
33
34
35
36
37
38
39







+
-
+








                return ToValue( PointerType( ValueToIRExpr( pointedType ) ) );
            } );
    }

    llvm::Type* GetLLVMType( const PointerType& p )
    {
        // DISABLE_CODEGEN
        return llvm::PointerType::getUnqual( GetLLVMType( *ValueFromIRExpr( p.m_pointedType ) ) );
        return nullptr; //llvm::PointerType::getUnqual( GetLLVMType( *ValueFromIRExpr( p.m_pointedType ) ) );
    }
}

namespace goose::ir
{
    Value Bridge< PointerType >::ToValue( const PointerType& p )
    {