xaav
xaav

Reputation: 7926

LLVM: fatal error: error in backend: alignment is limited to 32-bytes

I'm working on porting the flang (LLVM) fortran compiler to windows. One problem I ran into that I need help with is the following:

fatal error: error in backend: alignment is limited to 32-bytes

This happens when compiling some fortran files and is from here:

https://github.com/llvm-mirror/llvm/blob/806f68bbab5118c0252fdeaf1d84fc17ba9dae5c/lib/MC/MCWinCOFFStreamer.cpp#L230

What does this mean and will it be difficult to resolve it?

Fortran source

  DOUBLE PRECISION FUNCTION D1MACH(I)
  COMMON /D9MACH/ CRAY1
  RETURN
  END

Update: the following LLVM is generated:

 @d9mach_ = common global %structd9mach_  zeroinitializer, align 64

What is the implication of this?

Upvotes: 0

Views: 304

Answers (1)

xaav
xaav

Reputation: 7926

In the LLVM IR, the "align" argument cannot be more than 32 bytes on windows. If it is greater than that, you will need to reduce it to 32 (just find where that is written and modify it).

Upvotes: 1

Related Questions