Closed Bug 551165 Opened 15 years ago Closed 14 years ago

Unable to compile MIPS nanojit backend

Categories

(Core Graveyard :: Nanojit, defect, P3)

Other
Linux
defect

Tracking

(Not tracked)

RESOLVED FIXED
flash10.1

People

(Reporter: brbaker, Assigned: chris)

References

Details

(Whiteboard: fixed-in-nanojit, fixed-in-tamarin-redux)

Attachments

(1 file)

This failure is due to changes made in bug# 542326, comment# 27 Looks like MIPS also needs a little help here, adding Chris Dearman nanojit/NativeMIPS.cpp:582: error: no 'void nanojit::Assembler::asm_qjoin(nanojit::LIns*)' member function declared in class 'nanojit::Assembler' nanojit/NativeMIPS.cpp:659: error: no 'void nanojit::Assembler::asm_q2i(nanojit::LIns*)' member function declared in class 'nanojit::Assembler' nanojit/NativeMIPS.cpp:664: error: no 'void nanojit::Assembler::asm_promote(nanojit::LIns*)' member function declared in class 'nanojit::Assembler' nanojit/NativeMIPS.cpp:737: error: no 'void nanojit::Assembler::asm_qhi(nanojit::LIns*)' member function declared in class 'nanojit::Assembler' nanojit/NativeMIPS.cpp:746: error: no 'void nanojit::Assembler::asm_qlo(nanojit::LIns*)' member function declared in class 'nanojit::Assembler' nanojit/NativeMIPS.cpp: In member function 'void nanojit::Assembler::asm_arith(nanojit::LIns*)': nanojit/NativeMIPS.cpp:1079: error: 'LIR_div' was not declared in this scope nanojit/NativeMIPS.cpp:1080: error: 'LIR_mod' was not declared in this scope nanojit/NativeMIPS.cpp: In member function 'void nanojit::Assembler::asm_store64(nanojit::LOpcode, nanojit::LIns*, int, nanojit::LIns*)': nanojit/NativeMIPS.cpp:1118: error: 'LIR_ldq' was not declared in this scope nanojit/NativeMIPS.cpp:1118: error: 'LIR_ldqc' wasnot declared in this scope nanojit/NativeMIPS.cpp: In member function 'nanojit::RegisterMask nanojit::Assembler::hint(nanojit::LIns*)': nanojit/NativeMIPS.cpp:1858: error: 'LIR_callh' was not declared in this scope
Assignee: nobody → chris
Flags: flashplayer-qrb+
Priority: -- → P3
Target Milestone: --- → flash10.1
Status: NEW → ASSIGNED
Blocks: 524129
Attached patch Fix MIPS build errors (deleted) — Splinter Review
Fix compilation errors introduced by conditional definition of LIR_qjoin etc Reimplemented overflow handling in LIR_addxov,LIR_subxov and LIR_mulxov
I applied the patch to tamarin-redux rev 4338 and was able to cross compile on x86 linux using gnu mips toolchain version 4.3.3 (Sourcery G++ Lite 4.3-154) >$ ../configure.py --enable-shell --target=mips-linux >$ make >$ file shell/avmshell shell/avmshell: ELF 32-bit LSB executable, MIPS, MIPS64 version 1, for GNU/Linux 2.6.12, dynamically linked (uses shared libs), not stripped Problem that I am now having is that when I try and run the generated shell on a MIPS box I get the following error: # uname -a Linux asteammpis1 2.6.18-7.1 #3 SMP Mon Dec 14 17:59:30 PST 2009 7405b0-smp unknown # ./avmshell bash: ./avmshell: No such file or directory
Flags: flashplayer-triage+
> >$ ../configure.py --enable-shell --target=mips-linux > >$ make > >$ file shell/avmshell > shell/avmshell: ELF 32-bit LSB executable, MIPS, MIPS64 version 1, for > GNU/Linux 2.6.12, dynamically linked (uses shared libs), not stripped > > Problem that I am now having is that when I try and run the generated shell on > a MIPS box I get the following error: > > # uname -a > Linux asteammpis1 2.6.18-7.1 #3 SMP Mon Dec 14 17:59:30 PST 2009 7405b0-smp > unknown > # ./avmshell > bash: ./avmshell: No such file or directory The only way I can make this error happen on an executable binary is if there is some problem with the dynamic loader. Every other things I tried (wrong endianess etc) generated a different error. Could you send me a copy of the avmshell binary so I could take a look at it? Thanks
compiled shell sent via email. I have double checked the binary on another MIPS box and I get the same error, granted the machines were setup at the same time and are probably identical. I also checked that the coping around of the binary did not mess it up by running /file/ against the binary on my windows machine with the following results: $ file /c/temp/avmshell_mips /c/temp/avmshell_mips: ELF 32-bit LSB executable, MIPS, MIPS64 version 1, for GN U/Linux 2.6.12, dynamically linked (uses shared libs), not stripped So it appears that the file is ok.
Blocks: 558813
I am able to compile and run the shell with the supplied patch using the compilers provided by the MIPS box supplier. The shell runs a majority of the acceptance suite, however there are still a large number of failures. These failures are tracked via blocking bug #558813 I am not clear if this patch should land on its own or should be modified in order to address the blocking bug 558813
Comment on attachment 437408 [details] [diff] [review] Fix MIPS build errors Patches look good, ran an acceptance pass with release and debug shell. There are a couple of date handling failures that I will log separately (ecma3/Date/e15_9_5_(28|29|32|34)_1). Can we please get these patches (attachment #440267 [details] [diff] [review] and attachment #437408 [details] [diff] [review]) landed into nanojit and tamarin-redux asap. I really want to have this enabled in the tamarin build system so that we can ensure that it continues to work. Tracking adding MIPS to the build system via bug# 524129
Attachment #437408 - Flags: review?(edwsmith)
Attachment #437408 - Flags: review?(edwsmith) → review+
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: