Work-around weird GCC 4.6 linker issue with SmiTagging template.
TBR=rossberg@chromium.org Review URL: https://codereview.chromium.org/485653002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23146 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
ee8b9805b5
commit
0664127dba
@ -42,8 +42,14 @@ Node* ChangeLowering::HeapNumberValueIndexConstant() {
|
|||||||
|
|
||||||
|
|
||||||
Node* ChangeLowering::SmiShiftBitsConstant() {
|
Node* ChangeLowering::SmiShiftBitsConstant() {
|
||||||
const int smi_shift_size = (machine()->is64() ? SmiTagging<8>::kSmiShiftSize
|
// TODO(turbofan): Work-around for weird GCC 4.6 linker issue:
|
||||||
: SmiTagging<4>::kSmiShiftSize);
|
// src/compiler/change-lowering.cc:46: undefined reference to
|
||||||
|
// `v8::internal::SmiTagging<4u>::kSmiShiftSize'
|
||||||
|
// src/compiler/change-lowering.cc:46: undefined reference to
|
||||||
|
// `v8::internal::SmiTagging<8u>::kSmiShiftSize'
|
||||||
|
STATIC_ASSERT(SmiTagging<4>::kSmiShiftSize == 0);
|
||||||
|
STATIC_ASSERT(SmiTagging<8>::kSmiShiftSize == 31);
|
||||||
|
const int smi_shift_size = machine()->is64() ? 31 : 0;
|
||||||
return jsgraph()->Int32Constant(smi_shift_size + kSmiTagSize);
|
return jsgraph()->Int32Constant(smi_shift_size + kSmiTagSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user