Skip to content

Incorrect use of RIP Relative to access globals on x86_64 #1671

@llvmbot

Description

@llvmbot
Bugzilla Link 1299
Resolution WORKSFORME
Resolved on Feb 22, 2010 12:43
Version trunk
OS All
Reporter LLVM Bugzilla Contributor

Extended Description

Absolute addressing is never used to address a global variable. This is
incorrect as there is no guarantee that a given global is within 2GB of an
instruction referencing it. On some operating systems, such as FreeBSD, the JIT
will almost always find the globals more than 2GB away from code, but on any OS
all it takes is more than 2GB of global variables to make this happen.

This bug causes numerous JIT failures in llvm-test on FreeBSD.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions