[v6,1/5] Add cast_to_pointer to cast an integer to void * pointer
Commit Message
---
include/libc-pointer-arith.h | 3 +++
1 file changed, 3 insertions(+)
Comments
* H. J. Lu:
> ---
> include/libc-pointer-arith.h | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/include/libc-pointer-arith.h b/include/libc-pointer-arith.h
> index 72e722c5aa..04ba537617 100644
> --- a/include/libc-pointer-arith.h
> +++ b/include/libc-pointer-arith.h
> @@ -37,6 +37,9 @@
> /* Cast an integer or a pointer VAL to integer with proper type. */
> # define cast_to_integer(val) ((__integer_if_pointer_type (val)) (val))
>
> +/* Cast an integer VAL to void * pointer. */
> +# define cast_to_pointer(val) ((void *) (uintptr_t) (val))
> +
> /* Align a value by rounding down to closest size.
> e.g. Using size of 4096, we get this behavior:
> {4095, 4096, 4097} = {0, 4096, 4096}. */
Looks good.
Thanks,
Florian
@@ -37,6 +37,9 @@
/* Cast an integer or a pointer VAL to integer with proper type. */
# define cast_to_integer(val) ((__integer_if_pointer_type (val)) (val))
+/* Cast an integer VAL to void * pointer. */
+# define cast_to_pointer(val) ((void *) (uintptr_t) (val))
+
/* Align a value by rounding down to closest size.
e.g. Using size of 4096, we get this behavior:
{4095, 4096, 4097} = {0, 4096, 4096}. */