Re: inline newNode()

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: inline newNode()
Дата
Msg-id 17106.1034137712@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: inline newNode()  (Bruce Momjian <pgman@candle.pha.pa.us>)
Ответы Re: inline newNode()  (Bruce Momjian <pgman@candle.pha.pa.us>)
Список pgsql-patches
Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Right, palloc shouldn't.  I was thinking of having another version of
> palloc that _does_ clear out memory, and calling that from a newNode()
> macro.  We already know palloc is going to call MemoryContextAlloc, so
> we could have a pallocC() that calls a new MemoryContextAllocC() that
> would call the underlying memory allocation function, then do the loop
> like MemSet to clear it.

But if the MemSet is inside the called function then it cannot reduce
the if-tests to a compile-time decision to invoke the word-zeroing loop.
We want the MemSet to be expanded at the newNode call site, where the
size of the allocated memory is a compile-time constant.

            regards, tom lane

В списке pgsql-patches по дате отправления:

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: inline newNode()
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: inline newNode()