[all-commits] [llvm/llvm-project] 0fcb16: Allow DataLayout to support arbitrary pointer sizes

stephenneuendorffer via All-commits all-commits at lists.llvm.org
Tue Dec 7 23:20:35 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0fcb16eeb2284ad9b865d5865ae1b3c3a71a84d9
      https://github.com/llvm/llvm-project/commit/0fcb16eeb2284ad9b865d5865ae1b3c3a71a84d9
  Author: Stephen Neuendorffer <stephen.neuendorffer at xilinx.com>
  Date:   2021-12-07 (Tue, 07 Dec 2021)

  Changed paths:
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/lib/IR/DataLayout.cpp
    A llvm/test/Assembler/datalayout-anypointersize.ll
    M llvm/test/Assembler/invalid-datalayout7.ll

  Log Message:
  -----------
  Allow DataLayout to support arbitrary pointer sizes

Currently, it is impossible to specify a DataLayout with pointer
size and index size that is not a whole number of bytes.
This patch modifies
the DataLayout class to accept arbitrary pointer sizes and to
store the size as a number of bits, rather than as a number of bytes.
Generally speaking, the external interface of the class as used
by in-tree architectures remains the same and shouldn't affect the
behavior of architecures with pointer sizes equal to a whole number
of bytes.

Note the interface of setPointerAlignment has changed and takes
a pointer and index size that is a number of bits, rather than a number
of bytes.

Patch originally by Ajit Kumar Agarwal

Differential Revision: https://reviews.llvm.org/D114141




More information about the All-commits mailing list