11 Sep, 2018

2 commits

  • In int-ll64.h, we always use the following typedefs:

    typedef unsigned int u32;
    typedef unsigned long uintptr_t;
    typedef unsigned long long u64;

    This does not need to match to the compiler's .
    Do not include it.

    The use of PRI* makes the code super-ugly. You can simply use
    "l" for printing uintptr_t, "ll" for u64, and no modifier for u32.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • You do not need to use the typedefs provided by compiler.

    Our compilers are either IPL32 or LP64. Hence, U-Boot can/should
    always use int-ll64.h typedefs like Linux kernel, whatever the
    typedefs the compiler internally uses.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

27 Oct, 2014

1 commit

  • These types are problematic because they are typically declared in a
    non-standard way in U-Boot. For example, U-Boot uses 'long long' for
    int64_t even on a 64-bit machine whereas stdint.h uses 'long'.
    Similarly, U-Boot always uses 'long' for intptr_t whereas stdint.h mostly
    uses 'int'.

    This simple test script runs a few toolchains on a few archs to check for
    warnings.

    Signed-off-by: Simon Glass

    Simon Glass