New operators

Synopses

Declared in <llvm/IR/User.h>

Allocate a ConstantData with the ordinary global allocator.

void*
operator new(size_t S);

Deleted; subclasses must use a custom operand‐aware allocator.

void*
operator new(size_t Size) = delete;

Allocate a User with an operand pointer co‐allocated.

void*
operator new(
    size_t Size,
    HungOffOperandsAllocMarker Marker);

Allocate a User with the operands co‐allocated.

void*
operator new(
    size_t Size,
    IntrusiveOperandsAllocMarker allocTrait);

Allocate a User with co‐allocated operands and an optional descriptor.

void*
operator new(
    size_t Size,
    IntrusiveOperandsAndDescriptorAllocMarker allocTrait);

Return Value

  • A pointer to the allocated storage.

  • Pointer to the allocated User storage.

Parameters

Name

Description

S

Allocation size in bytes.

Size

Unused size argument required by the language.

Marker

Marker selecting hung‐off operand allocation.

allocTrait

Marker specifying the number of co‐allocated operands.

Created with MrDocs