2008-10-03 Joel Sherrill <joel.sherrill@oarcorp.com>

* libcsupport/src/printk.c: Addresses can be larger than integers
	so use long for %p formats.
	* score/inline/rtems/score/address.inl: Offsets can be positive or
	negative, so use int32_t.  Also do math with intptr_t since there
	are cases where the number of bits in an address do not equal the
	number of bits in an integer.
	* score/inline/rtems/score/heap.inl: Offsets can be positive or
	negative, so use int32_t.
This commit is contained in:
Joel Sherrill committed 2008-10-03 22:27:01 +00:00
1 parent 5365e6066f
commit db41bb6784
4 files changed
+20 -8

No files matched your search

+11
View File
@@ -1,3 +1,14 @@
2008-10-03 Joel Sherrill <joel.sherrill@oarcorp.com>
* libcsupport/src/printk.c: Addresses can be larger than integers
so use long for %p formats.
* score/inline/rtems/score/address.inl: Offsets can be positive or
negative, so use int32_t. Also do math with intptr_t since there
are cases where the number of bits in an address do not equal the
number of bits in an integer.
* score/inline/rtems/score/heap.inl: Offsets can be positive or
negative, so use int32_t.
2008-10-03 Joel Sherrill <joel.sherrill@oarcorp.com>
* configure.ac: Add m32r.
+1 -1
View File
@@ -113,7 +113,7 @@ void vprintk(
case 'd': case 'D': base = 10; sign = 1; break;
case 'u': case 'U': base = 10; sign = 0; break;
case 'x': case 'X': base = 16; sign = 0; break;
case 'p': base = 16; sign = 0; break;
case 'p': base = 16; sign = 0; lflag = 1; break;
case 's':
{ int i, len;
char *s;
+6 -5
View File
@@ -6,7 +6,7 @@
*/
/*
* COPYRIGHT (c) 1989-2006.
* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -39,12 +39,13 @@
*
* @return This method returns the resulting address.
*/
#include <rtems/bspIo.h>
RTEMS_INLINE_ROUTINE void *_Addresses_Add_offset (
void *base,
uint32_t offset
int32_t offset
)
{
return (void *)((char *)base + offset);
return (void *)((intptr_t)base + offset);
}
/** @brief Subtract Offset from Offset
@@ -61,10 +62,10 @@ RTEMS_INLINE_ROUTINE void *_Addresses_Add_offset (
RTEMS_INLINE_ROUTINE void *_Addresses_Subtract_offset (
void *base,
uint32_t offset
int32_t offset
)
{
return (void *)((char *)base - offset);
return (void *)((intptr_t)base - offset);
}
/** @brief Subtract Two Offsets
+2 -2
View File
@@ -6,7 +6,7 @@
*/
/*
* COPYRIGHT (c) 1989-2006.
* COPYRIGHT (c) 1989-2008.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -272,7 +272,7 @@ RTEMS_INLINE_ROUTINE void _Heap_Align_down_uptr (
*/
RTEMS_INLINE_ROUTINE Heap_Block *_Heap_Block_at(
void *base,
uint32_t offset
int32_t offset
)
{
return (Heap_Block *) _Addresses_Add_offset( base, offset );