From 1cec500c69b7fff50466b17282e83b3c8490c1fa Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Fri, 13 Oct 2017 10:40:45 -0700 Subject: [PATCH] blob: Use intptr_t instead of ssize_t ssize_t is a GNU extension and is not available on Windows or MacOS. Instead, we use intptr_t which should be effectively equivalent and is part of the C standard. This should fix the Windows and Mac OS builds. Fixes: 3af1c829891a4530682bce113fdd512d4f2de3c6 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103253 Reviewed-by: Jose Fonseca Tested-by: Vinson Lee --- src/compiler/blob.c | 8 ++++---- src/compiler/blob.h | 6 +++--- src/intel/vulkan/anv_pipeline_cache.c | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/compiler/blob.c b/src/compiler/blob.c index f0fa85e5beb..8dd254fefc6 100644 --- a/src/compiler/blob.c +++ b/src/compiler/blob.c @@ -158,10 +158,10 @@ blob_write_bytes(struct blob *blob, const void *bytes, size_t to_write) return true; } -ssize_t +intptr_t blob_reserve_bytes(struct blob *blob, size_t to_write) { - ssize_t ret; + intptr_t ret; if (! grow_to_fit (blob, to_write)) return -1; @@ -172,14 +172,14 @@ blob_reserve_bytes(struct blob *blob, size_t to_write) return ret; } -ssize_t +intptr_t blob_reserve_uint32(struct blob *blob) { align_blob(blob, sizeof(uint32_t)); return blob_reserve_bytes(blob, sizeof(uint32_t)); } -ssize_t +intptr_t blob_reserve_intptr(struct blob *blob) { align_blob(blob, sizeof(intptr_t)); diff --git a/src/compiler/blob.h b/src/compiler/blob.h index f0f28ec5fa7..2b975d45dfe 100644 --- a/src/compiler/blob.h +++ b/src/compiler/blob.h @@ -135,7 +135,7 @@ blob_write_bytes(struct blob *blob, const void *bytes, size_t to_write); * \return An offset to space allocated within \blob to which \to_write bytes * can be written, (or -1 in case of any allocation error). */ -ssize_t +intptr_t blob_reserve_bytes(struct blob *blob, size_t to_write); /** @@ -143,7 +143,7 @@ blob_reserve_bytes(struct blob *blob, size_t to_write); * space. Note that this must be used if later reading with \sa * blob_read_uint32, since it aligns the offset correctly. */ -ssize_t +intptr_t blob_reserve_uint32(struct blob *blob); /** @@ -151,7 +151,7 @@ blob_reserve_uint32(struct blob *blob); * space. Note that this must be used if later reading with \sa * blob_read_intptr, since it aligns the offset correctly. */ -ssize_t +intptr_t blob_reserve_intptr(struct blob *blob); /** diff --git a/src/intel/vulkan/anv_pipeline_cache.c b/src/intel/vulkan/anv_pipeline_cache.c index ad9c810f1f4..82551e9f81f 100644 --- a/src/intel/vulkan/anv_pipeline_cache.c +++ b/src/intel/vulkan/anv_pipeline_cache.c @@ -449,7 +449,7 @@ VkResult anv_GetPipelineCacheData( blob_write_bytes(&blob, &header, sizeof(header)); uint32_t count = 0; - ssize_t count_offset = blob_reserve_uint32(&blob); + intptr_t count_offset = blob_reserve_uint32(&blob); if (count_offset < 0) { *pDataSize = 0; blob_finish(&blob); -- 2.30.2