Goose  Diff

Differences From Artifact [d64ef01955]:

  • File bs/cir/instruction.h — part of check-in [83971c96a4] at 2023-08-27 22:30:05 on branch trunk —
    • Added "CallCheck" CIR instruction to request the verifier to check a bunch of func params like it was a real call
    • Used the above to verify the arguments passed to ghost funcs
    (user: zlodo size: 6415)

To Artifact [efa7b156b6]:

  • File bs/cir/instruction.h — part of check-in [96c02f37d1] at 2023-11-05 13:04:26 on branch trunk — Implemented inline functions (user: zlodo size: 6542)

9
10
11
12
13
14
15




16
17
18
19
20
21
22
    {
        public:
            Instruction() {}

            Instruction( Call&& c ) :
                m_content( move( c ) )
            {}





            Instruction( CallCheck&& c ) :
                m_content( move( c ) )
            {}

            Instruction( VarAddr&& vad ) :
                m_content( move( vad ) )







>
>
>
>







9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
    {
        public:
            Instruction() {}

            Instruction( Call&& c ) :
                m_content( move( c ) )
            {}

            Instruction( InlineCall&& c ) :
                m_content( move( c ) )
            {}

            Instruction( CallCheck&& c ) :
                m_content( move( c ) )
            {}

            Instruction( VarAddr&& vad ) :
                m_content( move( vad ) )
199
200
201
202
203
204
205

206
207
208
209
210
211
212
            {}

            using Content = variant
            <
                monostate,

                Call,

                CallCheck,

                VarAddr,
                TempAddr,
                Select,

                PushConstant,







>







203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
            {}

            using Content = variant
            <
                monostate,

                Call,
                InlineCall,
                CallCheck,

                VarAddr,
                TempAddr,
                Select,

                PushConstant,