diff options
author | Ben Gamari <ben@smart-cactus.org> | 2022-05-23 15:55:30 -0400 |
---|---|---|
committer | GHC GitLab CI <ghc-ci@gitlab-haskell.org> | 2022-05-23 23:05:26 -0400 |
commit | f390cfc51ca93ef883a454308942ca3f8497ae31 (patch) | |
tree | afbe6f3d48d7facd80a47b388a90066d4ddcb91b /rts/linker/BufferBuilder.h | |
parent | 1ca1efdc8758458a28414f6d00c679b8f9a6bd0a (diff) | |
download | haskell-wip/gdb-jit-object.tar.gz |
(cherry picked from commit 07c9532947a623a065d43ef5f69e530ca762f986)
Diffstat (limited to 'rts/linker/BufferBuilder.h')
-rw-r--r-- | rts/linker/BufferBuilder.h | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/rts/linker/BufferBuilder.h b/rts/linker/BufferBuilder.h deleted file mode 100644 index facccb8335..0000000000 --- a/rts/linker/BufferBuilder.h +++ /dev/null @@ -1,37 +0,0 @@ -#pragma once - -#include <stddef.h> -#include <stdint.h> - -struct BufferBuilder { - uint8_t *buffer; // start of buffer - uint8_t *head; // next unfilled byte - uint8_t *end; // end of buffer -}; - -struct BufferBuilder buffer_builder_new(size_t initial_sz); -void buffer_builder_free(struct BufferBuilder *bb); -size_t buffer_builder_filled_size(struct BufferBuilder *bb); -size_t buffer_builder_reserved_size(struct BufferBuilder *bb); -void buffer_builder_realloc(struct BufferBuilder *bb, size_t new_sz); -uint8_t *buffer_builder_push(struct BufferBuilder *bb, uint8_t *x, size_t sz); -void buffer_builder_append(struct BufferBuilder *bb, struct BufferBuilder *src); - -#define buffer_builder_push_struct(bb, x) \ - (typeof(x)*) buffer_builder_push(bb, (uint8_t *) &x, sizeof(x)) - -#define DEFINE_BUILDER(ty) \ - static inline ty ## _t* buffer_builder_ ## ty(struct BufferBuilder *bb, ty ## _t x) \ - { return (ty ## _t *) buffer_builder_push(bb, (uint8_t *) &x, sizeof(x)); } - -DEFINE_BUILDER(uint8); -DEFINE_BUILDER(uint16); -DEFINE_BUILDER(uint32); -DEFINE_BUILDER(uint64); -DEFINE_BUILDER(int8); -DEFINE_BUILDER(int16); -DEFINE_BUILDER(int32); -DEFINE_BUILDER(int64); - -#undef DEFINE_BUILDER - |