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



             Bug #: 55650

           Summary: [4.8 Regression] Firefox profiledbuild:  libxul.so:

                    cannot map zero-fill pages: Cannot allocate memory

    Classification: Unclassified

           Product: gcc

           Version: 4.8.0

            Status: UNCONFIRMED

          Severity: normal

          Priority: P3

         Component: gcov-profile

        AssignedTo: unassig...@gcc.gnu.org

        ReportedBy: mar...@trippelsdorf.de





Building Firefox with:

make -f client.mk profiledbuild



Results in:

...

/var/tmp/moz-build-dir/dist/bin/xpcshell: error while loading shared libraries:

libxul.so: cannot map zero-fill pages: Cannot allocate memory

make[4]: *** [prepare-package] Error 127



 % readelf -lSW ./libxul.so

There are 41 section headers, starting at offset 0x103e7f10:

Section Headers:

  [Nr] Name              Type            Address          Off    Size   ES Flg

Lk Inf Al

...

  [28] .bss              NOBITS          000000000bfaabe0 bfa9be0 80186ae8c 00 

WA  0   0 32



Adding Wl,-Map,libxul.map when linking libxul shows:

...

 .bss..LPBX1    0x000000000ccb3be0 0x800000000

/var/tmp/moz-build-dir/toolkit/library/../components/protobuf/once.i_o

....



Reducing once.cpp leads to:



 % cat test.ii

class A

{

    virtual void Run ();

};

class B:public A

{

public:

    B ();

    void Run ()

    {

    }

};

void *operator     new (unsigned long)

__attribute__ ((__externally_visible__));

void *moz_xmalloc ();

inline void *operator

new (unsigned long)

{

    return moz_xmalloc ();

}



inline A *

NewCallback ()

{

    return new B;

}



 % c++ -c -fprofile-generate -fdata-sections -O2 test.ii

 % readelf -lSW ./test.o | grep "800000000"

  [11] .bss..LPBX1       NOBITS          0000000000000000 000120 800000000 00 

WA  0   0 32

Reply via email to