Skip to content

Commit 9e060e4

Browse files
deepak1556Commit Bot
authored andcommitted
DISALLOW_IMPLICIT_CONSTRUCTORS for MacroAssembler
When BUILDING_V8_SHARED in release builds __declspec(dllexport) causes generation of implicit constructors in the forwarding class while its deleted in TurboAssemblerBase, which leads to compilation errors like: In file included from gen/v8/v8_base_jumbo_6.cc:41: In file included from .\../../v8/src/interface-descriptors.cc:7: In file included from ../../v8\src/macro-assembler.h:40: ../../v8\src/x64/macro-assembler-x64.h(92,9): error: call to deleted constructor of 'v8::internal::TurboAssemblerBase' : TurboAssemblerBase(std::forward<Args>(args)...) {} ^ ~~~~~~~~~~~~~~~~~~~~~~~~ ../../v8\src/x64/macro-assembler-x64.h(536,25): note: in instantiation of function template specialization 'v8::internal::TurboAssembler::TurboAssembler<v8::internal::TurboAssembler>' requested here class V8_EXPORT_PRIVATE MacroAssembler : public TurboAssembler { ^ ../../v8\src/turbo-assembler.h(127,34): note: 'TurboAssemblerBase' has been explicitly marked deleted here DISALLOW_IMPLICIT_CONSTRUCTORS(TurboAssemblerBase); ^ 1 error generated. The original changes were made in https://chromium-review.googlesource.com/c/v8/v8/+/1414913 [email protected],[email protected],[email protected] Bug: NONE Change-Id: I87a5a678b8bae13b3adc6f1c6ac0b9313ed18d85 Reviewed-on: https://chromium-review.googlesource.com/c/1454676 Commit-Queue: Clemens Hammacher <[email protected]> Reviewed-by: Clemens Hammacher <[email protected]> Cr-Commit-Position: refs/heads/master@{#59427}
1 parent 3000995 commit 9e060e4

7 files changed

Lines changed: 13 additions & 0 deletions

File tree

AUTHORS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ Colin Ihrig <[email protected]>
6969
Daniel Andersson <[email protected]>
7070
Daniel Bevenius <[email protected]>
7171
Daniel James <[email protected]>
72+
Deepak Mohan <[email protected]>
7273
Deon Dior <[email protected]>
7374
Dominic Farolini <[email protected]>
7475
Douglas Crosher <[email protected]>

src/arm/macro-assembler-arm.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -795,6 +795,8 @@ class V8_EXPORT_PRIVATE MacroAssembler : public TurboAssembler {
795795
// Needs access to SafepointRegisterStackIndex for compiled frame
796796
// traversal.
797797
friend class StandardFrame;
798+
799+
DISALLOW_IMPLICIT_CONSTRUCTORS(MacroAssembler);
798800
};
799801

800802
// -----------------------------------------------------------------------------

src/arm64/macro-assembler-arm64.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1999,6 +1999,8 @@ class V8_EXPORT_PRIVATE MacroAssembler : public TurboAssembler {
19991999
// branch isntructions with a range of +-128MB. If that becomes too little
20002000
// (!), the mechanism can be extended to generate special veneers for really
20012001
// far targets.
2002+
2003+
DISALLOW_IMPLICIT_CONSTRUCTORS(MacroAssembler);
20022004
};
20032005

20042006

src/ia32/macro-assembler-ia32.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -690,6 +690,8 @@ class V8_EXPORT_PRIVATE MacroAssembler : public TurboAssembler {
690690
// Needs access to SafepointRegisterStackIndex for compiled frame
691691
// traversal.
692692
friend class StandardFrame;
693+
694+
DISALLOW_IMPLICIT_CONSTRUCTORS(MacroAssembler);
693695
};
694696

695697
// -----------------------------------------------------------------------------

src/mips/macro-assembler-mips.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1148,6 +1148,8 @@ class V8_EXPORT_PRIVATE MacroAssembler : public TurboAssembler {
11481148
// Needs access to SafepointRegisterStackIndex for compiled frame
11491149
// traversal.
11501150
friend class StandardFrame;
1151+
1152+
DISALLOW_IMPLICIT_CONSTRUCTORS(MacroAssembler);
11511153
};
11521154

11531155
template <typename Func>

src/mips64/macro-assembler-mips64.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1218,6 +1218,8 @@ class V8_EXPORT_PRIVATE MacroAssembler : public TurboAssembler {
12181218
// Needs access to SafepointRegisterStackIndex for compiled frame
12191219
// traversal.
12201220
friend class StandardFrame;
1221+
1222+
DISALLOW_IMPLICIT_CONSTRUCTORS(MacroAssembler);
12211223
};
12221224

12231225
template <typename Func>

src/x64/macro-assembler-x64.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -892,6 +892,8 @@ class V8_EXPORT_PRIVATE MacroAssembler : public TurboAssembler {
892892
// Needs access to SafepointRegisterStackIndex for compiled frame
893893
// traversal.
894894
friend class StandardFrame;
895+
896+
DISALLOW_IMPLICIT_CONSTRUCTORS(MacroAssembler);
895897
};
896898

897899
// -----------------------------------------------------------------------------

0 commit comments

Comments
 (0)