adobe-flash / crossbridge

Welcome to visit the homepage!
http://www.crossbridge.io
542 stars 196 forks source link

Compilation error in abcstdlibs_more #12

Closed stopiccot closed 11 years ago

stopiccot commented 11 years ago

Thanks to recent commits SDK becomes more stable but here is another error. This time I have no idea what is going on because it seems to be a segfault in llvm internals.

===-------------------------------------------------------------------------===
                         Miscellaneous Ungrouped Timers
===-------------------------------------------------------------------------===

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  --- Name ---
   0.0001 (100.0%)   0.0006 (100.0%)   0.0007 (100.0%)   1.1180 (100.0%)  Run Command /usr/bin/java
   0.0001 (100.0%)   0.0006 (100.0%)   0.0007 (100.0%)   1.1180 (100.0%)  Total

0  llc               0x0000000105c1ec63 PrintStackTrace(void*) + 51
1  llc               0x0000000105c1f21d SignalHandler(int) + 333
2  libsystem_c.dylib 0x00007fff90e7594a _sigtramp + 26
3  libsystem_c.dylib 0x000000000000ebc0 _sigtramp + 18446603338085143184
4  llc               0x00000001052482cf getPhysicalRegisterVT(llvm::SDNode*, unsigned int, llvm::TargetInstrInfo const*) + 31
5  llc               0x0000000105255287 (anonymous namespace)::ScheduleDAGRRList::PickNodeToScheduleBottomUp() + 2351
6  llc               0x0000000105255a78 (anonymous namespace)::ScheduleDAGRRList::ListScheduleBottomUp() + 320
7  llc               0x0000000105255dec (anonymous namespace)::ScheduleDAGRRList::Schedule() + 456
8  llc               0x0000000105262745 llvm::ScheduleDAGSDNodes::Run(llvm::SelectionDAG*, llvm::MachineBasicBlock*) + 107
9  llc               0x0000000105332b4c llvm::SelectionDAGISel::CodeGenAndEmitDAG() + 3184
10 llc               0x00000001053351f3 llvm::SelectionDAGISel::SelectBasicBlock(llvm::ilist_iterator<llvm::Instruction const>, llvm::ilist_iterator<llvm::Instruction const>, bool&) + 281
11 llc               0x0000000105336266 llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) + 4204
12 llc               0x000000010533688f llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) + 597
13 llc               0x00000001054f19a6 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 104
14 llc               0x0000000105aa57e0 llvm::FPPassManager::runOnFunction(llvm::Function&) + 384
15 llc               0x0000000105aa04c6 llvm::FPPassManager::runOnModule(llvm::Module&) + 130
16 llc               0x0000000105aa51ff llvm::MPPassManager::runOnModule(llvm::Module&) + 635
17 llc               0x0000000105aa91ee llvm::PassManagerImpl::run(llvm::Module&) + 150
18 llc               0x0000000105aa9293 llvm::PassManager::run(llvm::Module&) + 39
19 llc               0x0000000104e20d20 main + 7344
20 libdyld.dylib     0x00007fff8dc3d7e1 start + 0
21 libdyld.dylib     0x0000000000000008 start + 18446603338137741351
Stack dump:
0.  Program arguments: /Users/stopiccot/code/flash/crossbridge/sdk/usr/bin/llc -gendbgsymtable -jvm=/usr/bin/java -falcon-parallel -filetype=obj /Users/stopiccot/code/flash/crossbridge/sdk/usr/lib/libm.o -o /Users/stopiccot/code/flash/crossbridge/sdk/usr/lib/stdlibs_abc/libm.o 
1.  Running pass 'Function Pass Manager' on module '/Users/stopiccot/code/flash/crossbridge/sdk/usr/lib/libm.o'.
2.  Running pass 'AVM2 DAG->DAG Pattern Instruction Selection' on function '@__divmoddi4'
make[3]: *** [abcstdlibs_more] Segmentation fault: 11
make[3]: *** Waiting for unfinished jobs....
===-------------------------------------------------------------------------===
                         Miscellaneous Ungrouped Timers
===-------------------------------------------------------------------------===

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  --- Name ---
   0.0001 (100.0%)   0.0006 (100.0%)   0.0007 (100.0%)  66.3638 (100.0%)  Run Command /usr/bin/java
   0.0001 (100.0%)   0.0006 (100.0%)   0.0007 (100.0%)  66.3638 (100.0%)  Total

make[2]: *** [abcstdlibs] Error 2
stopiccot commented 11 years ago

Any progress on this issue?

cbakgly commented 11 years ago

LLVM modified its partial procedure which led to null pointer in clobber register array. By comparing to previous version, you will find it if you want to take a deeper look and make change. Currently I am not working on this. Please expect future commits.

BTW, any comment on how to make this product better is welcome. We are quite open! :)

cbakgly commented 11 years ago

9b118eb5ca92b58a6f13a43fe2f026fc7e9a0faf