Lines Matching refs:h
213 #define obstack_base(h) ((void *) (h)->object_base) argument
217 #define obstack_chunk_size(h) ((h)->chunk_size) argument
221 #define obstack_next_free(h) ((h)->next_free) argument
225 #define obstack_alignment_mask(h) ((h)->alignment_mask) argument
228 #define obstack_init(h) \ argument
229 _obstack_begin ((h), 0, 0, \
233 #define obstack_begin(h, size) \ argument
234 _obstack_begin ((h), (size), 0, \
238 #define obstack_specify_allocation(h, size, alignment, chunkfun, freefun) \ argument
239 _obstack_begin ((h), (size), (alignment), \
243 #define obstack_specify_allocation_with_arg(h, size, alignment, chunkfun, freefun, arg) \ argument
244 _obstack_begin_1 ((h), (size), (alignment), \
248 #define obstack_chunkfun(h, newchunkfun) \ argument
249 ((h)->chunkfun = (struct _obstack_chunk *(*)(void *, long))(newchunkfun))
251 #define obstack_freefun(h, newfreefun) \ argument
252 ((h)->freefun = (void (*)(void *, struct _obstack_chunk *))(newfreefun))
254 #define obstack_1grow_fast(h, achar) (*((h)->next_free)++ = (achar)) argument
256 #define obstack_blank_fast(h, n) ((h)->next_free += (n)) argument
258 #define obstack_memory_used(h) _obstack_memory_used (h) argument
413 # define obstack_object_size(h) \ argument
414 (unsigned) ((h)->next_free - (h)->object_base)
416 # define obstack_room(h) \ argument
417 (unsigned) ((h)->chunk_limit - (h)->next_free)
419 # define obstack_empty_p(h) \ argument
420 ((h)->chunk->prev == 0 \
421 && (h)->next_free == __PTR_ALIGN ((char *) (h)->chunk, \
422 (h)->chunk->contents, \
423 (h)->alignment_mask))
431 # define obstack_make_room(h, length) \ argument
432 ((h)->temp.tempint = (length), \
433 (((h)->next_free + (h)->temp.tempint > (h)->chunk_limit) \
434 ? (_obstack_newchunk ((h), (h)->temp.tempint), 0) : 0))
436 # define obstack_grow(h, where, length) \ argument
437 ((h)->temp.tempint = (length), \
438 (((h)->next_free + (h)->temp.tempint > (h)->chunk_limit) \
439 ? (_obstack_newchunk ((h), (h)->temp.tempint), 0) : 0), \
440 memcpy ((h)->next_free, where, (h)->temp.tempint), \
441 (h)->next_free += (h)->temp.tempint)
443 # define obstack_grow0(h, where, length) \ argument
444 ((h)->temp.tempint = (length), \
445 (((h)->next_free + (h)->temp.tempint + 1 > (h)->chunk_limit) \
446 ? (_obstack_newchunk ((h), (h)->temp.tempint + 1), 0) : 0), \
447 memcpy ((h)->next_free, where, (h)->temp.tempint), \
448 (h)->next_free += (h)->temp.tempint, \
449 *((h)->next_free)++ = 0)
451 # define obstack_1grow(h, datum) \ argument
452 ((((h)->next_free + 1 > (h)->chunk_limit) \
453 ? (_obstack_newchunk ((h), 1), 0) : 0), \
454 obstack_1grow_fast (h, datum))
456 # define obstack_ptr_grow(h, datum) \ argument
457 ((((h)->next_free + sizeof (char *) > (h)->chunk_limit) \
458 ? (_obstack_newchunk ((h), sizeof (char *)), 0) : 0), \
459 obstack_ptr_grow_fast (h, datum))
461 # define obstack_int_grow(h, datum) \ argument
462 ((((h)->next_free + sizeof (int) > (h)->chunk_limit) \
463 ? (_obstack_newchunk ((h), sizeof (int)), 0) : 0), \
464 obstack_int_grow_fast (h, datum))
466 # define obstack_ptr_grow_fast(h, aptr) \ argument
467 (((const void **) ((h)->next_free += sizeof (void *)))[-1] = (aptr))
469 # define obstack_int_grow_fast(h, aint) \ argument
470 (((int *) ((h)->next_free += sizeof (int)))[-1] = (aint))
472 # define obstack_blank(h, length) \ argument
473 ((h)->temp.tempint = (length), \
474 (((h)->chunk_limit - (h)->next_free < (h)->temp.tempint) \
475 ? (_obstack_newchunk ((h), (h)->temp.tempint), 0) : 0), \
476 obstack_blank_fast (h, (h)->temp.tempint))
478 # define obstack_alloc(h, length) \ argument
479 (obstack_blank ((h), (length)), obstack_finish ((h)))
481 # define obstack_copy(h, where, length) \ argument
482 (obstack_grow ((h), (where), (length)), obstack_finish ((h)))
484 # define obstack_copy0(h, where, length) \ argument
485 (obstack_grow0 ((h), (where), (length)), obstack_finish ((h)))
487 # define obstack_finish(h) \ argument
488 (((h)->next_free == (h)->object_base \
489 ? (((h)->maybe_empty_object = 1), 0) \
491 (h)->temp.tempptr = (h)->object_base, \
492 (h)->next_free \
493 = __PTR_ALIGN ((h)->object_base, (h)->next_free, \
494 (h)->alignment_mask), \
495 (((h)->next_free - (char *) (h)->chunk \
496 > (h)->chunk_limit - (char *) (h)->chunk) \
497 ? ((h)->next_free = (h)->chunk_limit) : 0), \
498 (h)->object_base = (h)->next_free, \
499 (h)->temp.tempptr)
501 # define obstack_free(h, obj) \ argument
502 ((h)->temp.tempint = (char *) (obj) - (char *) (h)->chunk, \
503 ((((h)->temp.tempint > 0 \
504 && (h)->temp.tempint < (h)->chunk_limit - (char *) (h)->chunk)) \
505 ? (void) ((h)->next_free = (h)->object_base \
506 = (h)->temp.tempint + (char *) (h)->chunk) \
507 : (__obstack_free) (h, (h)->temp.tempint + (char *) (h)->chunk)))