Open Bug 1761665 Opened 2 years ago Updated 2 years ago

in file included from ..js/src/jit/AtomicOperations.h:14: src/jit/AtomicOperationsGenerated.h:240:17: error: 'asm' operand has impossible constraints

Categories

(Core :: JavaScript Engine: JIT, defect, P3)

Firefox 100
defect

Tracking

()

UNCONFIRMED

People

(Reporter: herrtimson, Unassigned)

Details

Attachments

(3 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0

Steps to reproduce:

I downloaded latest github sources and compiled them

Actual results:

the compile is broken with this error in js/src:

21:41.15 In file included from /usr/armv7a-unknown-linux-gnueabihf/tmp/portage/www-client/firefox-100.0/work/firefox-100.0/js/src/jit/AtomicOperations.h:14,
21:41.15 from /usr/armv7a-unknown-linux-gnueabihf/tmp/portage/www-client/firefox-100.0/work/firefox-100.0/js/src/builtin/AtomicsObject.cpp:24,
21:41.15 from Unified_cpp_js_src0.cpp:11:
21:41.15 /usr/armv7a-unknown-linux-gnueabihf/tmp/portage/www-client/firefox-100.0/work/firefox_build/js/src/jit/AtomicOperationsGenerated.h: In function 'bool atomics_xor(JSContext*, unsigned int, JS::Value*)':
21:41.15 /usr/armv7a-unknown-linux-gnueabihf/tmp/portage/www-client/firefox-100.0/work/firefox_build/js/src/jit/AtomicOperationsGenerated.h:240:17: error: 'asm' operand has impossible constraints
21:41.15 240 | asm volatile (
21:41.15 | ^~~
21:41.15 /usr/armv7a-unknown-linux-gnueabihf/tmp/portage/www-client/firefox-100.0/work/firefox_build/js/src/jit/AtomicOperationsGenerated.h:240:17: error: 'asm' operand has impossible constraints
21:41.15 240 | asm volatile (
21:41.15 | ^~~

Expected results:

I expect the compile to pass without issues

I will attach the compressed build log

I'm on armv7a

the error was a bit confusing, as js/src/jit/AtomicOperationsGenerated.h does not exist in the source tree of firefox. Its generated by js/src/jit/GenerateAtomicOperations.py file, so my initial assumption is that something is wrong with the latest updates to this file. Maybe since firefox-99 branch

attached for diagnosis, file is generated by GenerateAtomicOperations.py

The Bugbug bot thinks this bug should belong to the 'Core::JavaScript Engine: JIT' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → JavaScript Engine: JIT
Product: Firefox → Core

seems incomplete fix has landed in https://bugzilla.mozilla.org/show_bug.cgi?id=1756347

this should be extended to include both x86 and arm setup:

https://hg.mozilla.org/mozilla-central/rev/5348a5355b78#l1.418

(In reply to tt_1 from comment #5)

this should be extended to include both x86 and arm setup:

https://hg.mozilla.org/mozilla-central/rev/5348a5355b78#l1.418

Does that fix the problem for you?

this makes spidermonkey compile work for me on arm:

  •    if is_gcc and cpu_arch == "x86":
    
  •    if is_gcc and cpu_arch in ("x86", "arm"):
    

I barely know what I'm doing here, totally unfamiliar with the javascript engine

bugzilla automatically formated my message

you need to replace
if is_gcc and cpu_arch == "x86":

with:
if is_gcc and cpu_arch in ("x86", "arm"):

to fix the build error with arm

Severity: -- → S3
Priority: -- → P3

basically do this to make it compile on arm

Status: UNCONFIRMED → RESOLVED
Closed: 2 years ago
Resolution: --- → WORKSFORME

oh dang, I finally found the switch to trigger this:

--enable-lto hides this bug - no idea why

--disable-lto lets the bug emerge from the shadows :D

my patch from April still works for me, tested with spidermonkey and gcc on armv7a

Status: RESOLVED → UNCONFIRMED
Resolution: WORKSFORME → ---
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: