This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/40647] New: 32-bit pointers on 64-bit operating systems


Just passing on a request from Donald Knuth,
from http://www-cs-faculty.stanford.edu/~knuth/news08.html ,
A Flame About 64-bit Pointers

# It is absolutely idiotic to have 64-bit pointers when I compile a program
# that uses less than 4 gigabytes of RAM. When such pointer values appear
# inside a struct, they not only waste half the memory, they effectively
# throw away half of the cache.

# The gcc manpage advertises an option "-mlong32" that sounds like what I want.
# Namely, I think it would compile code for my x86-64 architecture, taking 
# advantage of the extra registers etc., but it would also know that my
# program is going to live inside a 32-bit virtual address space.

# Unfortunately, the -mlong32 option was introduced only for MIPS computers,
# years ago. Nobody has yet adopted such conventions for today's most popular
# architecture. Probably that happens because programs compiled with this
# convention will need to be loaded with a special version of libc.

# Please, somebody, make that possible.


-- 
           Summary: 32-bit pointers on 64-bit operating systems
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Keywords: missed-optimization
          Severity: enhancement
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: tkoenig at gcc dot gnu dot org
GCC target triplet: x86_64-*-*


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40647


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]