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

[ARM/Linux] Various build crashes after #26262 #27770

Closed
alpencolt opened this issue Nov 8, 2019 · 2 comments · Fixed by #27786

Comments

@alpencolt
Copy link
Member

@alpencolt alpencolt commented Nov 8, 2019

After #26262 there are various build errors during ARM cross build if passes additional cmake arguments.
-DFEATURE_GDBJIT=TRUE:

/home/alexander/src/tmp/coreclr/src/vm/gdbjit.cpp:1140:44: error: no member named 'GetSize' in 'EEClass'
             m_type_size = pMT->GetClass()->GetSize();
                           ~~~~~~~~~~~~~~~  ^
1 error generated.

-DFEATURE_PREJIT=true:

[ 99%] Building CXX object 
src/debug/daccess/CMakeFiles/daccess.dir/arm/primitives.cpp.o
/home/alexander/src/tmp/coreclr/src/debug/daccess/nidump.cpp:6351:9: 
error: no member named 'm_pNext' in 'DictionaryLayout'
         DisplayWriteFieldPointer( m_pNext, 
DataPtrToDisplay((TADDR)layout->m_pNext),
         ^                         ~~~~~~~
/home/alexander/src/tmp/coreclr/src/debug/daccess/nidump.cpp:314:64: 
note: expanded from macro 'DisplayWriteFieldPointer'
     do { IF_OPT(filter) m_display->WriteFieldPointer( # field, 
offsetof(type, field), fieldsize(type, field), ptr ); } while(0)
^              ~~~~~
/home/alexander/src/tmp/coreclr/src/pal/inc/rt/palrt.h:173:31: note: 
expanded from macro 'offsetof'
#define offsetof(type, field) __builtin_offsetof(type, field)
                               ^                        ~~~~~
/home/alexander/src/tmp/coreclr/src/debug/daccess/nidump.cpp:6351:35: 
error: no member named 'm_pNext' in 'DictionaryLayout'
         DisplayWriteFieldPointer( m_pNext, 
DataPtrToDisplay((TADDR)layout->m_pNext),
~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

-DFEATURE_NGEN_RELOCS_OPTIMIZATIONS=true:

18:06:28 [ 34%] Building CXX object src/vm/eventing/eventpipe/CMakeFiles/eventpipe.dir/eventpipe/dotnetruntime.cpp.o
18:06:28 In file included from /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/strongname/api/strongname.cpp:11:
18:06:28 In file included from /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/strongname/api/common.h:303:
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2044:42: errorScanning dependencies of target cee_dac
18:06:28 : no member named 'IsTaggedIndirect' in 'PlainPointer<MethodTable *>'
18:06:28         return pMT->m_pParentMethodTable.IsTaggedIndirect(base, pMT->GetFlagHasIndirectParent(), PARENT_MT_FIXUP_OFFSET);
18:06:28                ~~~~~~~~~~~~~~~~~~~~~~~~~ ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2044:98: error: use of undeclared identifier 'FIXUP_POINTER_INDIRECTION'
18:06:28         return pMT->m_pParentMethodTable.IsTaggedIndirect(base, pMT->GetFlagHasIndirectParent(), PARENT_MT_FIXUP_OFFSET);
18:06:28                                                                                                  ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2000:34: note: expanded from macro 'PARENT_MT_FIXUP_OFFSET'
18:06:28 #define PARENT_MT_FIXUP_OFFSET (-FIXUP_POINTER_INDIRECTION)
18:06:28                                  ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2066:37: error: no member named 'IsIndirectPtrMaybeNullIndirect' in 'PlainPointer<MethodTable *>'
18:06:28         return m_pParentMethodTable.IsIndirectPtrMaybeNullIndirect(GetFlagHasIndirectParent(), PARENT_MT_FIXUP_OFFSET);
18:06:28                ~~~~~~~~~~~~~~~~~~~~ ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2066:96: error: use of undeclared identifier 'FIXUP_POINTER_INDIRECTION'
18:06:28         return m_pParentMethodTable.IsIndirectPtrMaybeNullIndirect(GetFlagHasIndirectParent(), PARENT_MT_FIXUP_OFFSET);
18:06:28                                                                                                ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2000:34: note: expanded from macro 'PARENT_MT_FIXUP_OFFSET'
18:06:28 #define PARENT_MT_FIXUP_OFFSET (-FIXUP_POINTER_INDIRECTION)
18:06:28                                  ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2072:37: error: no member named 'IsIndirectPtrIndirect' in 'PlainPointer<MethodTable *>'
18:06:28         return m_pParentMethodTable.IsIndirectPtrIndirect(GetFlagHasIndirectParent(), PARENT_MT_FIXUP_OFFSET);
18:06:28                ~~~~~~~~~~~~~~~~~~~~ ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2072:87: error: use of undeclared identifier 'FIXUP_POINTER_INDIRECTION'
18:06:28         return m_pParentMethodTable.IsIndirectPtrIndirect(GetFlagHasIndirectParent(), PARENT_MT_FIXUP_OFFSET);
18:06:28                                                                                       ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2000:34: note: expanded from macro 'PARENT_MT_FIXUP_OFFSET'
18:06:28 #define PARENT_MT_FIXUP_OFFSET (-FIXUP_POINTER_INDIRECTION)
18:06:28                                  ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2078:37: error: no member named 'GetValuePtrIndirect' in 'PlainPointer<MethodTable *>'
18:06:28         return m_pParentMethodTable.GetValuePtrIndirect(GetFlagHasIndirectParent(), PARENT_MT_FIXUP_OFFSET);
18:06:28                ~~~~~~~~~~~~~~~~~~~~ ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2078:85: error: use of undeclared identifier 'FIXUP_POINTER_INDIRECTION'
18:06:28         return m_pParentMethodTable.GetValuePtrIndirect(GetFlagHasIndirectParent(), PARENT_MT_FIXUP_OFFSET);
18:06:28                                                                                     ^
18:06:28 /var/lib/jenkins/workspace/netcore/nightly_master/build_coreclr_rpm_stress/repo/code/src/vm/methodtable.h:2000:34: note: expanded from macro 'PARENT_MT_FIXUP_OFFSET'
18:06:28 #define PARENT_MT_FIXUP_OFFSET (-FIXUP_POINTER_INDIRECTION)

cc @jkotas @fadimounir @o-piskunov

@alpencolt

This comment has been minimized.

Copy link
Member Author

@alpencolt alpencolt commented Nov 8, 2019

In case errors related to m_pNext, this field was removed from src/vm/genericdict.h .

@stephentoub

This comment has been minimized.

Copy link
Member

@stephentoub stephentoub commented Nov 9, 2019

I'm reverting #26262 in #27786.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.