Closed Bug 1400199 Opened 7 years ago Closed 7 years ago

update atomics for s390(x)

Categories

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

Other
Linux
defect

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox57 --- fixed

People

(Reporter: dan, Assigned: dan)

Details

Attachments

(1 file, 1 obsolete file)

Attached patch ff-js-atomic-s390.patch (obsolete) — Splinter Review
Hi, this patch adds javascript atomics for s390 and s390x. Patch is based on https://src.fedoraproject.org/rpms/firefox/blob/master/f/build-jit-atomic-always-lucky.patch from Fedora.

failure from a build of trunk
...
/usr/bin/g++ -std=gnu++11 -o CTypes.o -c -I/home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/obj-s390x-ibm-linux-gnu/dist/system_wrappers -include /home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/config/gcc_hidden.h -DNDEBUG=1 -DTRIMMED=1 -DENABLE_BINARYDATA -DENABLE_SIMD -DENABLE_WASM_THREAD_OPS -DJS_CACHEIR_SPEW -DENABLE_SHARED_ARRAY_BUFFER -DEXPORT_JS_API -DJS_HAS_CTYPES '-DDLL_PREFIX="lib"' '-DDLL_SUFFIX=".so"' -DMOZ_HAS_MOZGLUE -I/home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/js/src -I/home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/obj-s390x-ibm-linux-gnu/js/src  -I/home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/obj-s390x-ibm-linux-gnu/dist/include  -I/home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/obj-s390x-ibm-linux-gnu/dist/include/nspr        -fPIC  -DMOZILLA_CLIENT -include /home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/obj-s390x-ibm-linux-gnu/js/src/js-confdefs.h -MD -MP -MF .deps/CTypes.o.pp  -Wall -Wc++11-compat -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wc++14-compat -Wc++1z-compat -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wformat -Wformat-overflow=2 -Wno-noexcept-type -fno-rtti -fno-exceptions -fno-math-errno -pthread -pipe  -g -freorder-blocks -O3 -fno-omit-frame-pointer   -Wno-shadow -Werror=format -fno-strict-aliasing   /home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/js/src/ctypes/CTypes.cpp
In file included from /home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/js/src/ctypes/CTypes.cpp:45:0:
/home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/js/src/jit/AtomicOperations.h:416:3: error: #error "No AtomicOperations support provided for this platform"
 # error "No AtomicOperations support provided for this platform"
   ^~~~~
/home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/js/src/jit/AtomicOperations.h:146:24: warning: inline function ‘static void js::jit::AtomicOperations::memcpySafeWhenRacy(void*, const void*, size_t)’ used but never defined
     static inline void memcpySafeWhenRacy(void* dest, const void* src, size_t nbytes);
                        ^~~~~~~~~~~~~~~~~~
make[5]: *** [/home/jenkins/workspace/Firefox-default/label/s390x/firefox-src/config/rules.mk:1066: CTypes.o] Error 1
Attachment #8908558 - Flags: review?(lhansen)
Assignee: nobody → dan
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
The patch is totally fine but I'm curious to know what's going on with the file names here.
Flags: needinfo?(dan)
Attachment #8908558 - Flags: review?(lhansen) → review+
Priority: -- → P3
Hi Lars, not sure I understand your question, what file names are you talking about, please?
Flags: needinfo?(dan)
Hi Dan, I'm talking about the filenames on your patch ending not in '.h' (as in the SpiderMonkey sources) but in '.h.s390'.
Ah, those are the original files when creating the patch "inside" the source tree, with cp foo.h foo.h.s390; gendiff ff-dir .s390 > patch
I see.  It's possible you have a different workflow from the rest of us; we usually just do 'hg diff' (or 'git diff' for git users) to generate this diff directly with the correct file names.

Anyway, let me know if you want me to create a landable patch for these changes (it can't land as it is, the file names being what they are) or if you want to resubmit the patch in a form we can land directly.  Either way, it can land after that.  Thanks.
I see, please create the landable patch, I haven't used the full hg repo on the s390x machine where I created the patch. Thanks.
(In reply to Dan Horák from comment #6)
> I see, please create the landable patch, I haven't used the full hg repo on
> the s390x machine where I created the patch. Thanks.

I'll do that for you.
Attachment #8909229 - Flags: review+
Thanks guys.
Attachment #8908558 - Attachment is obsolete: true
https://hg.mozilla.org/mozilla-central/rev/026e90a81638
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla57
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: