Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build errors under gcc 5.0 #13

Open
nealef opened this issue Nov 23, 2015 · 16 comments
Open

Build errors under gcc 5.0 #13

nealef opened this issue Nov 23, 2015 · 16 comments

Comments

@nealef
Copy link

nealef commented Nov 23, 2015

1 - Uninitialized variable

In file included from ../src/v8.h:62:0,
from ../src/accessors.cc:28:
../src/heap-inl.h: In static member function 'static v8::internal::MaybeObject* v8::internal::Accessors::FunctionGetCaller(v8::internal::Object_, void_)':
../src/heap-inl.h:784:38: error: 'no_alloc' may be used uninitialized in this function [-Werror=maybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/accessors.cc:714:22: note: 'no_alloc' was declared here
AssertNoAllocation no_alloc;

2 - Overflow warning

../src/bignum.cc: In member function 'void v8::internal::Bignum::AssignDecimalString(v8::internal::Vector)':
../src/bignum.cc:103:6: error: assuming signed overflow does not occur when assuming that (X + c) < X is always false [-Werror=strict-overflow]
void Bignum::AssignDecimalString(Vector value) {
^

  1. Array subscript out of bounds

../src/jsregexp.cc: In member function ‘virtual void v8::internal::TextNode::FillInBMInfo(int, int, int, v8::internal::BoyerMooreLookahead_, bool)’:
../src/jsregexp.cc:5895:36: error: array subscript is above array bounds [-Werror=array-bounds]
bm->Set(offset, chars[j]);
^
../src/jsregexp.cc: In member function ‘void v8::internal::CharacterRange::AddCaseEquivalents(v8::internal::ZoneListv8::internal::CharacterRange_, bool, v8::internal::Zone*)’:
../src/jsregexp.cc:5390:25: error: array subscript is above array bounds [-Werror=array-bounds]
uc32 c = range[i];
^
The latter looks more like a problem with GCC than the code. I just got rid of the -Werror for the time being.

@john-yan
Copy link
Contributor

hello, may I ask what kind of branch are you using to build?

@nealef
Copy link
Author

nealef commented Nov 23, 2015

Following the instructions at
https://github.com/andrewlow/v8z/wiki/How-to-build-libv8.so

git checkout origin/3.14-s390 -b 3.14-s390

hello, may I ask what kind of branch are you using to build?

@john-yan
Copy link
Contributor

The lastest stable branch is 4.5-s390. Could you please try that out?

@joransiu
Copy link
Member

Hi @nealef, thanks for pointing out these GCC warnings. When we developed 3.14-s390, we used / tested with GCC 4.3/4.4 from RH6.x / SLES 11. These are the compiler levels that were used to build Node.js 0.10 as well. Looks like the newer GCC 5.0 has introduced additional warnings over GCC 4.3/4.4.

@nealef
Copy link
Author

nealef commented Nov 23, 2015

It appears the build instructions have to change as well. make dependencies tells me to use gclient sync but that command complains "Error: client not configured; see 'gclient config'". What do I need to do?

@nealef
Copy link
Author

nealef commented Nov 24, 2015

any advice on getting past the gclient sync issue?

@joransiu
Copy link
Member

Hi @nealef

Once you check out depot_tools, you can run the following commands:

gclient config --spec 'solutions = [{'\''name'\'': '\''v8'\'', '\''url'\'': '\''git@github.com:andrewlow/v8z.git@4.5-s390'\''}]'
gclient sync  --with_branch_heads

The gclient sync will then download the dependencies for you. Let me know if it works for you. Cheers.

@joransiu
Copy link
Member

@nealef Just curious, are you trying to build V8 as a shared library, and include that in some other product? Mind if I ask which one? The product may have a dependency on specific level of V8. The V8 headers have changed between 3.14 and 4.5, and are not compatible.

@nealef
Copy link
Author

nealef commented Nov 24, 2015

  • gsync client - thanks I'll give that a try.
  • v8 as a shared library: Yes, I was looking to build mongodb (again). I built both of these several months ago, but got rid of them to make space (llvm is a bitch to build). I have a feeling you're telling me it still requires 3.14.

@joransiu
Copy link
Member

Yeah, as far as I'm aware, MongoDB is still dependent on V8 3.12, which is compatible with 3.14-s390. Were you able to build that branch successfully with GCC 5.0 without the -Werror?

FYI, instructions to build MongoDB on Linux on z : https://github.com/linux-on-ibm-z/docs/wiki/Building-MongoDB

@nealef
Copy link
Author

nealef commented Nov 24, 2015

Yes, 3.14 built cleanly once I removed the -Werror.

@nealef
Copy link
Author

nealef commented Nov 24, 2015

Before I investigate too far, has this been seen before:

Segv from - /home/neale/rpmbuild/BUILD/v8-3.14/out/s390x.release/d8 --test --stress-opt --always-opt --nobreak-on-abort --nodead-code-elimination --allow-natives-syntax /home/neale/rpmbuild/BUILD/v8-3.14/test/mjsunit/mjsunit.js /home/neale/rpmbuild/BUILD/v8-3.14/test/mjsunit/div-mod.js

Core was generated by `/home/neale/rpmbuild/BUILD/v8-3.14/out/s390x.release/d8 --test --stress-opt --a'.
Program terminated with signal 11, Segmentation fault.
#0 0x000003fffce2afd6 in v8::internal::Invoke (is_construct=is_construct@entry=false, function=function@entry=...,
receiver=..., receiver@entry=..., argc=argc@entry=0, args=0x0, has_pending_exception=0x3ffffd736df)
at ../src/execution.cc:126
126 *has_pending_exception = value->IsException();
Missing separate debuginfos, use: debuginfo-install glibc-2.17-78.el7.s390x
(gdb) bt
#0 0x000003fffce2afd6 in v8::internal::Invoke (is_construct=is_construct@entry=false, function=function@entry=...,
receiver=..., receiver@entry=..., argc=argc@entry=0, args=0x0, has_pending_exception=0x3ffffd736df)
at ../src/execution.cc:126
#1 0x000003fffce2d022 in v8::internal::Execution::Call (callable=..., receiver=..., argc=, argv=0x0,
pending_exception=0x3ffffd736df, convert_receiver=false) at ../src/execution.cc:179
#2 0x000003fffcdc2b32 in v8::Script::Run (this=) at ../src/api.cc:1620
#3 0x0000000080006f04 in v8::Shell::ExecuteString (source=..., name=name@entry=...,
print_result=print_result@entry=false, report_exceptions=report_exceptions@entry=true) at ../src/d8.cc:166
#4 0x0000000080008366 in v8::SourceGroup::Execute (this=0xa67afc58) at ../src/d8.cc:1556
#5 0x00000000800088ce in v8::Shell::RunMain (argc=argc@entry=9, argv=argv@entry=0x3ffffd73cb8) at ../src/d8.cc:1803
#6 0x0000000080008a38 in v8::Shell::Main (argc=, argv=0x3ffffd73cb8) at ../src/d8.cc:1857
#7 0x000003fffc936552 in __libc_start_main () from /lib64/libc.so.6
#8 0x00000000800038fe in _start ()

@joransiu
Copy link
Member

I have not seen that before. AFAIK, 3.14 was running V8 FVT tests clean (with GCC 4.4). Will try to reproduce.

@maximmai
Copy link

I am able to reproduce the 'overflow-warning' with version 4.8, using the system's default GCC 4.8.3:

  CXX(target) /sandbox/maximmai/v8/v8z/4.5/v8/out/s390x.release/obj.target/v8_base/src/third_party/fdlibm/fdlibm.o
../src/third_party/fdlibm/fdlibm.cc: In function ‘int v8::fdlibm::rempio2(double, double*)’:
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
cc1plus: all warnings being treated as errors
make[1]: *** [/sandbox/maximmai/v8/v8z/4.5/v8/out/s390x.release/obj.target/v8_base/src/third_party/fdlibm/fdlibm.o] Error 1
make[1]: Leaving directory `/sandbox/maximmai/v8/v8z/4.5/v8/out'
make: *** [s390x.release] Error 2
lozlnx03.canlab.ibm.com:/sandbox/maximmai/v8/v8z/4.5/v8 $> 
x + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
cc1plus: all warnings being treated as errors
make[1]: *** [/sandbox/maximmai/v8/v8z/4.5/v8/out/s390x.release/obj.target/v8_base/src/third_party/fdlibm/fdlibm.o] Error 1
make[1]: Leaving directory `/sandbox/maximmai/v8/v8z/4.5/v8/out'
make: *** [s390x.release] Error 2
lozlnx03.canlab.ibm.com:/sandbox/maximmai/v8/v8z/4.5/v8 $> 
[ 0 cloudant local  1 TOP minitor  3 cloudant data pusher  4 
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
../src/third_party/fdlibm/fdlibm.cc:210:17: error: array subscript is above array bounds [-Werror=array-bounds]
         f[jx + i] = static_cast<double>(two_over_pi[jv + i]);
                 ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
         for (j = 0, fw = 0.0; j <= jx; j++) fw += x[j] * f[jx + i - j];
                                                                      ^
../src/third_party/fdlibm/fdlibm.cc:211:70: error: array subscript is above array bounds [-Werror=array-bounds]
../src/third_party/fdlibm/fdlibm.cc:212:12: error: array subscript is above array bounds [-Werror=array-bounds]
         q[i] = fw;
            ^
cc1plus: all warnings being treated as errors
make[1]: *** [/sandbox/maximmai/v8/v8z/4.5/v8/out/s390x.release/obj.target/v8_base/src/third_party/fdlibm/fdlibm.o] Error 1
make[1]: Leaving directory `/sandbox/maximmai/v8/v8z/4.5/v8/out'
make: *** [s390x.release] Error 2

@joransiu
Copy link
Member

@maximmai Thanks for pointing out the fdlibm overflow errors. I believe these are different than the ones @nealef had pointed out in the first comment. This is a third party library code that's used by V8 for trig functions. Maybe we should move these errors into a separate issue tracker. Are you compiling the 4.5-s390 branch with GCC 4.8.3? That is the compiler version we are testing with, and I don't see those errors in our recent build logs.

Edit: I've opened Issue #14 to track the fdlibm errors.

@nealef
Copy link
Author

nealef commented Nov 25, 2015

Here are all the warnings from gcc 5.0:

../src/bignum.cc: In member function 'void v8::internal::Bignum::AssignDecimalString(v8::internal::Vector)':
../src/bignum.cc:103:6: warning: assuming signed overflow does not occur when assuming that (X + c) < X is always false [-Wstrict-overflow]
void Bignum::AssignDecimalString(Vector value) {
^

In file included from ../src/v8.h:62:0,
from ../src/accessors.cc:28:
../src/heap-inl.h: In static member function 'static v8::internal::MaybeObject* v8::internal::Accessors::FunctionGetCaller(v8::internal::Object_, void_)':
../src/heap-inl.h:784:38: warning: 'no_alloc' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/accessors.cc:714:22: note: 'no_alloc' was declared here
AssertNoAllocation no_alloc;
^

../src/bignum.cc: In member function 'void v8::internal::Bignum::AssignDecimalString(v8::internal::Vector)':
../src/bignum.cc:103:6: warning: assuming signed overflow does not occur when assuming that (X + c) < X is always false [-Wstrict-overflow]
void Bignum::AssignDecimalString(Vector value) {
^

In file included from ../src/v8.h:67:0,
from ../src/compiler.cc:28:
../src/handles-inl.h: In member function 'v8::internal::OptimizingCompiler::Status v8::internal::OptimizingCompiler::OptimizeGraph()':
../src/handles-inl.h:175:25: warning: 'no_handles.v8::internal::NoHandleAllocation::level_' may be used uninitialized in this function [-Wmaybe-uninitialized]
data->level = level_;
^
../src/compiler.cc:353:22: note: 'no_handles.v8::internal::NoHandleAllocation::level_' was declared here
NoHandleAllocation no_handles;
^
In file included from ../src/v8.h:62:0,
from ../src/compiler.cc:28:
../src/heap-inl.h:784:38: warning: 'no_gc' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/compiler.cc:352:22: note: 'no_gc' was declared here
AssertNoAllocation no_gc;
^

In file included from ../src/v8.h:62:0,
from ../src/disassembler.cc:28:
../src/heap-inl.h: In function 'int v8::internal::DecodeIt(FILE_, const v8::internal::V8NameConverter&, v8::internal::byte_, v8::internal::byte*)':
../src/heap-inl.h:784:38: warning: 'no_alloc' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/disassembler.cc:119:22: note: 'no_alloc' was declared here
AssertNoAllocation no_alloc;
^
In file included from ../src/v8.h:67:0,
from ../src/disassembler.cc:28:
../src/handles-inl.h:175:25: warning: 'ha.v8::internal::NoHandleAllocation::level_' may be used uninitialized in this function [-Wmaybe-uninitialized]
data->level = level_;
^
../src/disassembler.cc:118:22: note: 'ha.v8::internal::NoHandleAllocation::level_' was declared here
NoHandleAllocation ha;
^

In file included from ../src/v8.h:67:0,
from ../src/execution.cc:30:
../src/handles-inl.h: In function 'v8::internal::Handlev8::internal::Object v8::internal::Invoke(bool, v8::internal::Handlev8::internal::JSFunction, v8::internal::Handlev8::internal::Object, int, v8::internal::Handlev8::internal::Object_, bool_)':
../src/handles-inl.h:175:25: warning: 'na.v8::internal::NoHandleAllocation::level_' may be used uninitialized in this function [-Wmaybe-uninitialized]
data->level = level_;
^
../src/execution.cc:109:24: note: 'na.v8::internal::NoHandleAllocation::level_' was declared here
NoHandleAllocation na;
^

In file included from ../src/v8.h:62:0,
from ../src/interpreter-irregexp.cc:31:
../src/heap-inl.h: In static member function 'static v8::internal::RegExpImpl::IrregexpResult v8::internal::IrregexpInterpreter::Match(v8::internal::Isolate_, v8::internal::Handlev8::internal::ByteArray, v8::internal::Handlev8::internal::String, int_, int)':
../src/heap-inl.h:784:38: warning: 'a' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/interpreter-irregexp.cc:615:22: note: 'a' was declared here
AssertNoAllocation a;
^

In file included from ../src/v8.h:62:0,
from ../src/isolate.cc:30:
../src/heap-inl.h: In member function 'void v8::internal::Isolate::PrintStack(v8::internal::StringStream_)':
../src/heap-inl.h:784:38: warning: 'nogc' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/isolate.cc:752:22: note: 'nogc' was declared here
AssertNoAllocation nogc;
^
In file included from ../src/v8.h:62:0,
from ../src/isolate.cc:30:
../src/heap-inl.h: In member function 'bool v8::internal::Isolate::MayNamedAccess(v8::internal::JSObject_, v8::internal::Object*, v8::AccessType)':
../src/heap-inl.h:784:38: warning: 'no_gc' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/isolate.cc:837:22: note: 'no_gc' was declared here
AssertNoAllocation no_gc;
^

In file included from ../src/v8globals.h:32:0,
from ../src/v8.h:53,
from ../src/parser.cc:28:
../src/utils.h: In member function 'v8::internal::FunctionEntry v8::internal::ScriptDataImpl::GetFunctionEntry(int)':
../src/checks.h:57:5: warning: assuming signed overflow does not occur when assuming that (X + c) < X is always false [-Wstrict-overflow]
if (!(condition)) {
^
../src/checks.h:261:32: note: in expansion of macro 'CHECK'
#define ASSERT(condition) CHECK(condition)
^
../src/utils.h:378:5: note: in expansion of macro 'ASSERT'
ASSERT(from < to);
^

../src/parser.cc: In member function 'void v8::internal::RegExpBuilder::AddQuantifierToAtom(int, int, v8::internal::RegExpQuantifier::Type)':
../src/parser.cc:202:6: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
void RegExpBuilder::AddQuantifierToAtom(int min,
^
In file included from ../src/v8globals.h:32:0,
from ../src/v8.h:53,
from ../src/parser.cc:28:
../src/checks.h:57:5: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
if (!(condition)) {
^
../src/checks.h:261:32: note: in expansion of macro 'CHECK'
#define ASSERT(condition) CHECK(condition)
^
../src/utils.h:377:5: note: in expansion of macro 'ASSERT'
ASSERT(to <= length_);
^

../src/profile-generator.cc: In member function 'void v8::internal::ProfileTree::TraverseDepthFirst(Callback_) [with Callback = v8::internal::DeleteNodesCallback]':
../src/profile-generator.cc:415:6: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
void ProfileTree::TraverseDepthFirst(Callback_ callback) {
^
In file included from ../src/v8globals.h:32:0,
from ../src/v8.h:53,
from ../src/profile-generator.cc:28:
../src/checks.h:57:5: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
if (!(condition)) {
^
../src/checks.h:261:32: note: in expansion of macro 'CHECK'
#define ASSERT(condition) CHECK(condition)
^
../src/list.h:87:5: note: in expansion of macro 'ASSERT'
ASSERT(i < length_);
^
../src/profile-generator.cc: In member function 'void v8::internal::ProfileTree::TraverseDepthFirst(Callback_) [with Callback = v8::internal::FilteredCloneCallback]':
../src/profile-generator.cc:415:6: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
void ProfileTree::TraverseDepthFirst(Callback_ callback) {
^
In file included from ../src/v8globals.h:32:0,
from ../src/v8.h:53,
from ../src/profile-generator.cc:28:
../src/checks.h:57:5: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
if (!(condition)) {
^
../src/checks.h:261:32: note: in expansion of macro 'CHECK'
#define ASSERT(condition) CHECK(condition)
^
../src/list.h:87:5: note: in expansion of macro 'ASSERT'
ASSERT(i < length_);
^
../src/profile-generator.cc: In member function 'void v8::internal::ProfileTree::TraverseDepthFirst(Callback_) [with Callback = v8::internal::CalculateTotalTicksCallback]':
../src/profile-generator.cc:415:6: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
void ProfileTree::TraverseDepthFirst(Callback_ callback) {
^
In file included from ../src/v8globals.h:32:0,
from ../src/v8.h:53,
from ../src/profile-generator.cc:28:
../src/checks.h:57:5: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
if (!(condition)) {
^
../src/checks.h:261:32: note: in expansion of macro 'CHECK'
#define ASSERT(condition) CHECK(condition)
^
../src/list.h:87:5: note: in expansion of macro 'ASSERT'
ASSERT(i < length_);
^

In file included from ../src/runtime.cc:34:0:
../src/runtime.cc: In function 'v8::internal::MaybeObject* v8::internal::Runtime_ListNatives(v8::internal::Arguments, v8::internal::Isolate_)':
../src/runtime.cc:13127:32: note: variable tracking size limit exceeded with -fvar-tracking-assignments, retrying without
RUNTIME_FUNCTION(MaybeObject_, Runtime_ListNatives) {
^
../src/arguments.h:122:6: note: in definition of macro 'RUNTIME_FUNCTION'
Type Name(Arguments args, Isolate* isolate)
^

In file included from ../src/v8.h:62:0,
from ../src/type-info.cc:28:
../src/heap-inl.h: In member function 'void v8::internal::TypeFeedbackOracle::CreateDictionary(v8::internal::Handlev8::internal::Code, v8::internal::ZoneListv8::internal::RelocInfo_)':
../src/heap-inl.h:798:38: warning: 'allocation_allowed' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/type-info.cc:631:29: note: 'allocation_allowed' was declared here
DisableAssertNoAllocation allocation_allowed;
^
In file included from ../src/v8.h:62:0,
from ../src/s390/deoptimizer-s390.cc:31:
../src/heap-inl.h: In static member function 'static void v8::internal::Deoptimizer::DeoptimizeFunction(v8::internal::JSFunction_)':
../src/heap-inl.h:784:38: warning: 'no_allocation' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (active_) HEAP->allow_allocation(old_state_);
^
../src/s390/deoptimizer-s390.cc:60:22: note: 'no_allocation' was declared here
AssertNoAllocation no_allocation;
^

john-yan pushed a commit that referenced this issue Mar 23, 2016
Merged 55b4df7
Merged d00da47
Merged 4da2e3d
Merged c1507e1

[runtime] Unify comparison operator runtime entries.

[turbofan] Don't use the CompareIC in JSGenericLowering.

PPC: [runtime] Unify comparison operator runtime entries.

PPC: [turbofan] Don't use the CompareIC in JSGenericLowering.

R=hablich@chromium.org
BUG=chromium:590832,v8:4788
LOG=N

Review URL: https://codereview.chromium.org/1777503002 .

Cr-Commit-Position: refs/branch-heads/5.0@{#13}
Cr-Branched-From: ad16e6c-refs/heads/5.0.71@{#1}
Cr-Branched-From: bd9df50-refs/heads/master@{#34215}
exinfinitum pushed a commit to exinfinitum/v8z that referenced this issue Apr 21, 2016
…bmruntimes#13 id:260001 of https://codereview.chromium.org/1759873002/ )

Reason for revert:
Breaks compile:
https://build.chromium.org/p/client.v8/builders/V8%20Mac64/builds/7740

Probably had outdated tryjobs

Original issue's description:
> Assembler changes for enabling GrowHeap in Wasm
>  - New RelocInfo mode WASM_MEMORY_REFERENCE as a marker for wasm code objects that need to be relocated on a heap change
>  - RelocInfo mode recorded for immediates that use the memory buffer as base
>  - Tests to verify address patching works
>
> BUG=
>
> Committed: https://crrev.com/cc815b69c17da368107ed77306a5bb161170c834
> Cr-Commit-Position: refs/heads/master@{#34831}

TBR=titzer@chromium.org,yangguo@chromium.org,bradnelson@chromium.org,bradnelson@google.com,marija.antic@imgtec.com,gdeepti@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review URL: https://codereview.chromium.org/1808823002

Cr-Commit-Position: refs/heads/master@{#34832}
john-yan pushed a commit that referenced this issue May 12, 2016
This is essentially a cherry-pick that was applied before plus the
removal of a test that is now failing because it depends on more
involved changes. The test case checks comparison of different
undetectable JSReceivers, which is not relevant in practice, as there's
only one of these at most, which is document.all.

Merged 55b4df7
Merged d00da47
Merged 4da2e3d
Merged c1507e1

[runtime] Unify comparison operator runtime entries.

[turbofan] Don't use the CompareIC in JSGenericLowering.

PPC: [runtime] Unify comparison operator runtime entries.

PPC: [turbofan] Don't use the CompareIC in JSGenericLowering.

R=yangguo@chromium.org
BUG=chromium:590832,v8:4788,chromium:606181
LOG=N
NOTRY=true
NOPRESUBMIT=true

Cr-Commit-Position: refs/branch-heads/5.0@{#13}
Cr-Branched-From: ad16e6c-refs/heads/5.0.71@{#1}
Cr-Branched-From: bd9df50-refs/heads/master@{#34215}

Review URL: https://codereview.chromium.org/1925463003

Cr-Commit-Position: refs/branch-heads/5.0@{#44}
Cr-Branched-From: ad16e6c-refs/heads/5.0.71@{#1}
Cr-Branched-From: bd9df50-refs/heads/master@{#34215}
john-yan pushed a commit that referenced this issue May 19, 2016
This is essentially a cherry-pick that was applied before plus the
removal of a test that is now failing because it depends on more
involved changes. The test case checks comparison of different
undetectable JSReceivers, which is not relevant in practice, as there's
only one of these at most, which is document.all.

Merged 55b4df7
Merged d00da47
Merged 4da2e3d
Merged c1507e1

[runtime] Unify comparison operator runtime entries.

[turbofan] Don't use the CompareIC in JSGenericLowering.

PPC: [runtime] Unify comparison operator runtime entries.

PPC: [turbofan] Don't use the CompareIC in JSGenericLowering.

R=yangguo@chromium.org
BUG=chromium:590832,v8:4788,chromium:606181
LOG=N
NOTRY=true
NOPRESUBMIT=true

Cr-Commit-Position: refs/branch-heads/5.0@{#13}
Cr-Branched-From: ad16e6c-refs/heads/5.0.71@{#1}
Cr-Branched-From: bd9df50-refs/heads/master@{#34215}

Review URL: https://codereview.chromium.org/1925463003

Cr-Commit-Position: refs/branch-heads/5.0@{#44}
Cr-Branched-From: ad16e6c-refs/heads/5.0.71@{#1}
Cr-Branched-From: bd9df50-refs/heads/master@{#34215}
jBarz pushed a commit that referenced this issue Mar 14, 2017
Merged 460bff5

[compiler] Make feedback vector cope with flag changes.

BUG=chromium:600995,chromium:601331
LOG=N
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/1903293003 .

Cr-Commit-Position: refs/branch-heads/5.1@{#13}
Cr-Branched-From: 167dc63-refs/heads/5.1.281@{#1}
Cr-Branched-From: 03953f5-refs/heads/master@{#35282}
mmallick-ca pushed a commit that referenced this issue Aug 23, 2018
…nter/Leave calls

Revision: e7fa71dc583588b22b00c45e5429834bb232dd23

BUG=chromium:669329
LOG=N
NOTRY=true
NOPRESUBMIT=true
NOTREECHECKS=true
R=cbruni@chromium.org

Change-Id: I813d8d1c7078ed455aa4fd51c42dee912f90526c
Reviewed-on: https://chromium-review.googlesource.com/657679
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/branch-heads/6.2@{#13}
Cr-Branched-From: efa2ac4-refs/heads/6.2.414@{#1}
Cr-Branched-From: a861ebb-refs/heads/master@{#47693}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants