[PATCH v2 0/6] improve cross-compiling usage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sparse is architecture-agnostic and details like the size of
a long or the type of size_t are parameters. These parameters
are either given via some option flagsor are based on the
machine used to build Sparse.

This normally gives good results with few complications but
is unsatisfactory when using Sparse during cross-compilation.
This series aims to improve this situation by adding a new
option, --arch=ARCH, which allows to specify the target
architecture.

Changes since v1:
* add support for 32-bit s390
* keep architecture in sync with bit-ness.
* with --arch, default bit-ness doesn't depend on the build machine.
* --arch also set the default endianness of the architecture
* use --arch to simplify cgcc
* add some tests

This series is also available for review & testing at:
    git://github.com/lucvoo/sparse-dev.git option-arch


Luc Van Oostenryck (7):
  arch: add predefine for __mips__
  arch: reorder MACH_XXX defines
  arch: add support for s390 (ILP32)
  arch: change the arch when changing -m32/64
  arch: add an option to specify the desired arch: --arch=<arch>
  cgcc: specify the arch via --arch
  cgcc: removed unneeded predefines for integers

 cgcc                      | 67 ++++++++----------------------------
 lib.c                     | 72 +++++++++++++++++++++++++++++++++++++++
 machine.h                 | 22 +++++-------
 sparse.1                  |  8 +++++
 target.c                  | 22 ++++++++++++
 validation/arch/arm.c     | 27 +++++++++++++++
 validation/arch/arm64.c   | 23 +++++++++++++
 validation/arch/mips32.c  | 29 ++++++++++++++++
 validation/arch/riscv64.c | 27 +++++++++++++++
 9 files changed, 232 insertions(+), 65 deletions(-)
 create mode 100644 validation/arch/arm.c
 create mode 100644 validation/arch/arm64.c
 create mode 100644 validation/arch/mips32.c
 create mode 100644 validation/arch/riscv64.c

-- 
2.23.0




[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux