<div dir="ltr">Hello Team,<div><br></div><div>Good Morning!!</div><div><br></div><div>This is Vishnu Prasanth doing my master's thesis on improving llvm compiler optimization.</div><div><br></div><div>Currently I am trying to build dragon egg and when I gave take, it is not getting recognized for ARM machine.</div><div><br></div><div>Can you please help me with.</div><div><br></div><div>Below are the errors when I gave the below command inside dragon egg directory</div><div><br></div><div>GCC=GCC_DIR/gcc LLVM_CONFIG=LLVM_DIR/install/bin/llvm-config make<br></div><div><br></div><div><div>Compiling Backend.cpp</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp                                                                                        :28:0:</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:34:52:                                                                                         error: "!=" may not appear in macro parameter list</div><div> #define DEFAULT_TARGET_AAPCS_BASED(ARM_DEFAULT_ABI != ARM_ABI_APCS &&                                                                                                  \</div><div>                                                    ^</div><div>In file included from /gaia/class/student/seerangv/LLVM_DIR/install/include/llvm                                                                                        /CodeGen/MachinePassRegistry.h:21:0,</div><div>                 from /gaia/class/student/seerangv/LLVM_DIR/install/include/llvm                                                                                        /CodeGen/RegAllocRegistry.h:18,</div><div>                 from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp                                                                                        :35:</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/CodeGen/Passes.h:216:                                                                                        3: warning: unused parameter ‘C’ [-Wunused-parameter]</div><div>   createMachineScheduler(MachineSchedContext *C) const {</div><div>   ^</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/CodeGen/Passes.h:223:                                                                                        3: warning: unused parameter ‘C’ [-Wunused-parameter]</div><div>   createPostMachineScheduler(MachineSchedContext *C) const {</div><div>   ^</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:28:0:</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp: In function ‘void CreateTargetMachine(const string&)’:</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:254:37: error: no matching function for call to ‘llvm::SubtargetFeatures::AddFeature(const char [5], bool)’</div><div>     F.AddFeature("vfp3", TARGET_VFP3);                                         \</div><div>                                     ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:464:3: note: in expansion of macro ‘LLVM_SET_SUBTARGET_FEATURES’</div><div>   LLVM_SET_SUBTARGET_FEATURES(CPU, Features);</div><div>   ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:254:37: note: candidate is:</div><div>     F.AddFeature("vfp3", TARGET_VFP3);                                         \</div><div>                                     ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:464:3: note: in expansion of macro ‘LLVM_SET_SUBTARGET_FEATURES’</div><div>   LLVM_SET_SUBTARGET_FEATURES(CPU, Features);</div><div>   ^</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:41:0:</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/MC/SubtargetFeature.h:81:8: note: void llvm::SubtargetFeatures::AddFeature(llvm::StringRef)</div><div>   void AddFeature(const StringRef String);</div><div>        ^</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/MC/SubtargetFeature.h:81:8: note:   candidate expects 1 argument, 2 provided</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:28:0:</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:256:59: error: no matching function for call to ‘llvm::SubtargetFeatures::AddFeature(const char [5], bool)’</div><div>       F.AddFeature("vfp2", TARGET_VFP && TARGET_HARD_FLOAT);                   \</div><div>                                                           ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:464:3: note: in expansion of macro ‘LLVM_SET_SUBTARGET_FEATURES’</div><div>   LLVM_SET_SUBTARGET_FEATURES(CPU, Features);</div><div>   ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:256:59: note: candidate is:</div><div>       F.AddFeature("vfp2", TARGET_VFP && TARGET_HARD_FLOAT);                   \</div><div>                                                           ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:464:3: note: in expansion of macro ‘LLVM_SET_SUBTARGET_FEATURES’</div><div>   LLVM_SET_SUBTARGET_FEATURES(CPU, Features);</div><div>   ^</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:41:0:</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/MC/SubtargetFeature.h:81:8: note: void llvm::SubtargetFeatures::AddFeature(llvm::StringRef)</div><div>   void AddFeature(const StringRef String);</div><div>        ^</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/MC/SubtargetFeature.h:81:8: note:   candidate expects 1 argument, 2 provided</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:28:0:</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:257:37: error: no matching function for call to ‘llvm::SubtargetFeatures::AddFeature(const char [5], bool)’</div><div>     F.AddFeature("neon", TARGET_NEON);                                         \</div><div>                                     ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:464:3: note: in expansion of macro ‘LLVM_SET_SUBTARGET_FEATURES’</div><div>   LLVM_SET_SUBTARGET_FEATURES(CPU, Features);</div><div>   ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:257:37: note: candidate is:</div><div>     F.AddFeature("neon", TARGET_NEON);                                         \</div><div>                                     ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:464:3: note: in expansion of macro ‘LLVM_SET_SUBTARGET_FEATURES’</div><div>   LLVM_SET_SUBTARGET_FEATURES(CPU, Features);</div><div>   ^</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:41:0:</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/MC/SubtargetFeature.h:81:8: note: void llvm::SubtargetFeatures::AddFeature(llvm::StringRef)</div><div>   void AddFeature(const StringRef String);</div><div>        ^</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/MC/SubtargetFeature.h:81:8: note:   candidate expects 1 argument, 2 provided</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:28:0:</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:258:37: error: no matching function for call to ‘llvm::SubtargetFeatures::AddFeature(const char [5], bool)’</div><div>     F.AddFeature("fp16", TARGET_FP16);                                         \</div><div>                                     ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:464:3: note: in expansion of macro ‘LLVM_SET_SUBTARGET_FEATURES’</div><div>   LLVM_SET_SUBTARGET_FEATURES(CPU, Features);</div><div>   ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/include/arm/dragonegg/Target.h:258:37: note: candidate is:</div><div>     F.AddFeature("fp16", TARGET_FP16);                                         \</div><div>                                     ^</div><div>/gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:464:3: note: in expansion of macro ‘LLVM_SET_SUBTARGET_FEATURES’</div><div>   LLVM_SET_SUBTARGET_FEATURES(CPU, Features);</div><div>   ^</div><div>In file included from /gaia/class/student/seerangv/DRAGONEGG_DIR/src/Backend.cpp:41:0:</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/MC/SubtargetFeature.h:81:8: note: void llvm::SubtargetFeatures::AddFeature(llvm::StringRef)</div><div>   void AddFeature(const StringRef String);</div><div>        ^</div><div>/gaia/class/student/seerangv/LLVM_DIR/install/include/llvm/MC/SubtargetFeature.h:81:8: note:   candidate expects 1 argument, 2 provided</div><div>make: *** [Backend.o] Error 1</div></div><div><br></div><div><img src="cid:ii_157bac08d4bf1608" alt="Inline image 1" width="454" height="174"><br></div><div><br></div><div><br></div><div>Thanks,</div><div>Vishnu</div><div><br></div><div><br></div></div>