Line data Source code
1 : /* 2 : * SPDX-License-Identifier: MPL-2.0 3 : * 4 : * This Source Code Form is subject to the terms of the Mozilla Public 5 : * License, v. 2.0. If a copy of the MPL was not distributed with this 6 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. 7 : * 8 : * Copyright 2024 MonetDB Foundation; 9 : * Copyright August 2008 - 2023 MonetDB B.V.; 10 : * Copyright 1997 - July 2008 CWI. 11 : */ 12 : 13 : #include "monetdb_config.h" 14 : #include "opt_reduce.h" 15 : #include "mal_interpreter.h" 16 : 17 : str 18 3 : OPTreduceImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci) 19 : { 20 3 : InstrPtr p = 0; 21 3 : int actions = 0; 22 3 : str msg = MAL_SUCCEED; 23 : 24 3 : (void) cntxt; 25 3 : (void) stk; 26 3 : (void) p; 27 : 28 3 : actions = mb->vtop; 29 3 : trimMalVariables(mb, 0); 30 3 : actions = actions - mb->vtop; 31 : 32 : /* Defense line against incorrect plans */ 33 : /* plan is not changed */ 34 : /* plan is not changed */ 35 : //if( actions > 0){ 36 : //msg = chkTypes(cntxt->usermodule, mb, FALSE); 37 : //if (!msg) 38 : // msg = chkFlow(mb); 39 : //if (!msg) 40 : // msg = chkDeclarations(mb); 41 : //} 42 : /* keep actions taken as a fake argument */ 43 3 : (void) pushInt(mb, pci, actions); 44 : 45 3 : return msg; 46 : }