Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v9.1.0 proposal #16851

Merged
merged 99 commits into from
Nov 7, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
b130feb
deps: upgrade openssl sources to 1.0.2m
shigeki Nov 2, 2017
3438765
deps: copy all openssl header files to include dir
shigeki Nov 2, 2017
3d7eea5
deps: fix openssl assembly error on ia32 win32
indutny Jan 8, 2014
e0f6dee
deps: fix asm build error of openssl in x86_win32
Feb 13, 2015
083a6e3
openssl: fix keypress requirement in apps on win32
Feb 17, 2015
162686f
deps: add -no_rand_screen to openssl s_client
May 27, 2015
185229e
deps: update openssl asm and asm_obsolete files
shigeki Nov 2, 2017
ed0fbd8
deps: cherry-pick e7f4e9e from upstream libuv
bzoz Nov 3, 2017
d6a0ffe
zlib: warn before crash on invalid internals usage
addaleax Oct 31, 2017
88ad01f
build: make doc target quiet
danbev Oct 26, 2017
8bc5249
build: make test-doc and lint addon docs
joyeecheung Oct 22, 2017
1cef9ef
doc: make default values and periods consistent
matejkrajcovic Oct 27, 2017
97fd6df
src: do not include x.h if x-inl.h is included
joyeecheung Oct 27, 2017
d733dd9
doc: add *-inl.h include rule to C++ style guide
joyeecheung Oct 27, 2017
224ea15
http2: move uv_prepare handle to `Http2Session`
addaleax Oct 24, 2017
f31b796
src: add `InternalCallbackScope` util constructor
addaleax Oct 24, 2017
b50c334
http2: track async state for sending
addaleax Oct 24, 2017
3f52962
http2: remove unused assignment
addaleax Oct 24, 2017
bf7dc38
http2: make sessions garbage-collectible
addaleax Oct 24, 2017
c4736cf
src: fix etw provider include on Windows
joyeecheung Oct 31, 2017
05f9047
repl: avoid crashing from null and undefined errors
priyank-p Oct 28, 2017
59a4789
doc: howto decode buffers extending from Writable
dicearr Oct 23, 2017
6ee28b2
doc: util.isDeepStrictEqual returns boolean
azz Oct 31, 2017
f9b2099
test: use fixtures module in test-https-pfx
t-k-g Oct 6, 2017
4f8765d
src: remove unused includes in string_bytes.h
danbev Oct 30, 2017
433745e
build: add missing comma in sources list
danbev Oct 30, 2017
ffe4d7b
test: increase coverage for ModuleMap
robtpaton Oct 6, 2017
f3e0161
build,src: Add CloudABI as a POSIX-like runtime environment.
EdSchouten Oct 30, 2017
1771bb5
doc: fix Changelog link order
gibfahn Oct 31, 2017
6998591
test,net: remove scatological terminology
Trott Oct 30, 2017
f3a65a8
src: pass context to Get() operations for cares_wrap
evanlucas Oct 31, 2017
3fd7edd
doc: add windowsVerbatimArguments docs
Oct 18, 2017
09181eb
doc: add details about rss on process.memoryUsage
profnandaa Oct 27, 2017
90e8e81
doc : mention constant-time in crypto doc
mithunsasidharan Oct 30, 2017
c40b3c6
src: add 'dynamic' process.release.lts property
rvagg Oct 6, 2015
d178c6d
test: update process-release for Node 8 Carbon
Fishrock123 Nov 1, 2017
5077faf
test: pause child until parent is ready
jBarz Oct 4, 2017
0b337cb
test: fix flaky test-http2-server-rst-stream.js
apapirovski Nov 2, 2017
3241799
build: suppress lint-md output
gibfahn Oct 27, 2017
d5ea177
doc: add nodejs/gyp team for GYP related issues
gibfahn Oct 31, 2017
7349d42
cli: add --stack-trace-limit to NODE_OPTIONS
addaleax Oct 25, 2017
a814786
src: improve module loader readability
addaleax Oct 26, 2017
a0b94f4
lib: refactor ES module loader for readability
addaleax Oct 28, 2017
d6d4610
http, tls: better support for IPv6 addresses
mattiasholmlund Aug 10, 2017
689c9d4
test: mark test-async-wrap-uncaughtexception as flaky
refack Nov 2, 2017
fc58c52
test: fix malformed parallel.status line
Trott Nov 3, 2017
e585c41
doc: add docs for Zlib#close()
lpinca Oct 29, 2017
26f1a1d
test: fix test-cli-node-options on Windows
addaleax Nov 3, 2017
dfe5684
http2: refactor settings handling
jasnell Nov 1, 2017
e3283c7
http2: allocate on every chunk send
jasnell Nov 1, 2017
7388144
doc: add 9.x to version picker and mark 8.x as LTS
Nov 1, 2017
77e4ec8
doc: update license to include node-inspect
MylesBorins Nov 1, 2017
a87f846
src: add method to compute storage in WriteWrap
addaleax Nov 3, 2017
326a048
tools: add fixer for no-let-in-for-declaration
starkwang Oct 31, 2017
1b090c9
http, http2: add 103 Early Hints status code
yosuke-furukawa Oct 31, 2017
87b4e3e
tls: accept array of protocols in TLSSocket
qubyte Oct 31, 2017
9c39d79
http: use arrow fns for lexical `this` in Agent
bengl Oct 25, 2017
72d0e7e
http2: refactor multiple internals
jasnell Nov 1, 2017
0ab3d37
test: refactor exitedAfterDisconnect test
Trott Nov 3, 2017
6074c8c
inspector: include node_platform.h header
alexeykuzmin Nov 2, 2017
762a11f
http2: improve errors thrown in header validation
joyeecheung Nov 3, 2017
d7df4df
doc: correct EventEmitter reference
gowpen Nov 6, 2017
e05d4f4
doc: correct effects to affects
gowpen Nov 6, 2017
2bb148f
doc: make stream.Readable consistent
thefourtheye Nov 6, 2017
8a2b4ee
src: remove unnecessary call to SetHiddenPrototype
verwaest Oct 27, 2017
fa5a841
tools: update to ESLint 4.10.0
cjihrig Nov 4, 2017
6a2cb12
src: clean up uv_fs_t's in module_wrap.cc
cjihrig Nov 3, 2017
f3e63f2
test: update test to use fixtures
awegrzyn Nov 6, 2017
bcd818a
test: replace `common.fixturesDir` usage
sastan Nov 6, 2017
422d315
tools: replace string concetation with templates
Nov 6, 2017
700c5e7
test: replace common.fixturesDir with fixtures.readSync()
AdriVanHoudt Nov 6, 2017
ec1b110
test: replace common.fixturesDir with fixtures module
doomhz Nov 6, 2017
e781d93
tools: replace string concatenation with template literals
lambrojos Nov 6, 2017
2156828
test: clarified assert message for test-require-json.js
matthias-reis Nov 6, 2017
021ccb4
test: use default assertion messages
trootski Nov 6, 2017
e4b3c00
test: replace fixturesDir with usage of fixtures module
itavy Nov 6, 2017
77f0359
http: use 'connect' event only if socket is connecting
lpinca Nov 3, 2017
6e22dc8
tools: replace string concatenation with template literals
kevinwcyu Nov 6, 2017
219ac4b
test: fix typos in read-buffer tests
jimivdw Nov 6, 2017
e9396d2
tools: remove unneeded parentheses in doc/html.js
vsemozhetbyt Nov 6, 2017
ef67980
test: update test to use fixtures.readKey
Nov 6, 2017
6831e42
test: use fixtures module in test-repl
DamianLion Nov 6, 2017
d054e94
test: add detailed message for assertion failure
pcdevil Nov 6, 2017
5f88543
test: refactor tls test to use fixtres.readSync
brianoconnell Nov 6, 2017
6739f41
doc: fix json generator warnings
lpinca Nov 4, 2017
50d505c
test: include file mode in assert message
sastan Nov 6, 2017
a85d6e9
test: show incorrect value on test failure
Nov 6, 2017
527ddda
test: remove custom message from assertion
Marsup Nov 6, 2017
a409b87
test: improve message in test-fs-readfile-pipe-large
keldorus Nov 6, 2017
978aa84
doc: add isTTY property documentation
sonaysevik Nov 6, 2017
b441573
test: use default assertion message
jonask-wix Nov 6, 2017
da66610
src: fix -Winconsistent-missing-override warning
bnoordhuis Nov 3, 2017
c14030e
lib: fix version check in tick processor
bnoordhuis Nov 5, 2017
e0c7b3d
lib: shuffle v8_prof_polyfill.js for unit testing
bnoordhuis Nov 5, 2017
2294ba4
test: tick processor version check regression test
bnoordhuis Nov 5, 2017
f097e27
doc: fix a link in dgram.md
vsemozhetbyt Nov 7, 2017
dee7800
doc: add links to EventEmitter in errors.md
Delapouite Nov 7, 2017
9de633d
2017-11-07, Version 9.1.0 (Current)
cjihrig Nov 7, 2017
5f5ef42
Working on v9.1.1
cjihrig Nov 7, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
12 changes: 7 additions & 5 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,12 @@ Select a Node.js version below to view the changelog history:
* [Node.js 8](doc/changelogs/CHANGELOG_V8.md)
* [Node.js 7](doc/changelogs/CHANGELOG_V7.md)
* [Node.js 6](doc/changelogs/CHANGELOG_V6.md)
* [Node.js 5](doc/changelogs/CHANGELOG_V5.md)
* [Node.js 4](doc/changelogs/CHANGELOG_V4.md)
* [Node.js 5](doc/changelogs/CHANGELOG_V5.md),
[0.12](doc/changelogs/CHANGELOG_V012.md),
[0.10](doc/changelogs/CHANGELOG_V010.md),
[io.js](doc/changelogs/CHANGELOG_IOJS.md) and [Archive](doc/changelogs/CHANGELOG_ARCHIVE.md)
* [io.js](doc/changelogs/CHANGELOG_IOJS.md)
* [Node.js 0.12](doc/changelogs/CHANGELOG_V012.md)
* [Node.js 0.10](doc/changelogs/CHANGELOG_V010.md)
* [Archive](doc/changelogs/CHANGELOG_ARCHIVE.md)

Please use the following table to find the changelog for a specific Node.js
release.
Expand All @@ -28,7 +29,8 @@ release.
</tr>
<tr>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V9.md#9.0.0">9.0.0</a></b><br/>
<b><a href="doc/changelogs/CHANGELOG_V9.md#9.1.0">9.1.0</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V9.md#9.0.0">9.0.0</a><br/>
</td>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V8.md#8.9.0">8.9.0</a></b><br/>
Expand Down
15 changes: 15 additions & 0 deletions CPP_STYLE_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,21 @@ class FancyContainer {
What it says in the title.
## Do not include `*.h` if `*-inl.h` has already been included
Do
```cpp
#include "util-inl.h" // already includes util.h
```

instead of

```cpp
#include "util.h"
#include "util-inl.h"
```

## Avoid throwing JavaScript errors in nested C++ methods

If you need to throw JavaScript errors from a C++ binding method, try to do it
Expand Down
23 changes: 23 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -1145,3 +1145,26 @@ The externally maintained libraries used by Node.js are:
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
"""

- node-inspect, located at deps/node-inspect, is licensed as follows:
"""
Copyright Node.js contributors. All rights reserved.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.
"""
72 changes: 51 additions & 21 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,8 @@ test: all
$(CI_ASYNC_HOOKS) \
$(CI_JS_SUITES) \
$(CI_NATIVE_SUITES) \
doctool known_issues
$(CI_DOC) \
known_issues
endif

# For a quick test, does not run linter or build doc
Expand Down Expand Up @@ -268,7 +269,6 @@ test/gc/build/Release/binding.node: test/gc/binding.cc test/gc/binding.gyp
--directory="$(shell pwd)/test/gc" \
--nodedir="$(shell pwd)"

# Implicitly depends on $(NODE_EXE), see the build-addons rule for rationale.
DOCBUILDSTAMP_PREREQS = tools/doc/addon-verify.js doc/api/addons.md

ifeq ($(OSTYPE),aix)
Expand All @@ -277,7 +277,7 @@ endif

test/addons/.docbuildstamp: $(DOCBUILDSTAMP_PREREQS)
$(RM) -r test/addons/??_*/
$(NODE) $<
[ -x $(NODE) ] && $(NODE) $< || node $<
touch $@

ADDONS_BINDING_GYPS := \
Expand Down Expand Up @@ -313,10 +313,10 @@ test/addons/.buildstamp: config.gypi \
done
touch $@

# .buildstamp and .docbuildstamp need $(NODE_EXE) but cannot depend on it
# .buildstamp needs $(NODE_EXE) but cannot depend on it
# directly because it calls make recursively. The parent make cannot know
# if the subprocess touched anything so it pessimistically assumes that
# .buildstamp and .docbuildstamp are out of date and need a rebuild.
# .buildstamp is out of date and need a rebuild.
# Just goes to show that recursive make really is harmful...
# TODO(bnoordhuis) Force rebuild after gyp update.
build-addons: $(NODE_EXE) test/addons/.buildstamp
Expand Down Expand Up @@ -352,10 +352,10 @@ test/addons-napi/.buildstamp: config.gypi \
done
touch $@

# .buildstamp and .docbuildstamp need $(NODE_EXE) but cannot depend on it
# .buildstamp needs $(NODE_EXE) but cannot depend on it
# directly because it calls make recursively. The parent make cannot know
# if the subprocess touched anything so it pessimistically assumes that
# .buildstamp and .docbuildstamp are out of date and need a rebuild.
# .buildstamp is out of date and need a rebuild.
# Just goes to show that recursive make really is harmful...
# TODO(bnoordhuis) Force rebuild after gyp or node-gyp update.
build-addons-napi: $(NODE_EXE) test/addons-napi/.buildstamp
Expand Down Expand Up @@ -387,6 +387,7 @@ test-all-valgrind: test-build
CI_NATIVE_SUITES ?= addons addons-napi
CI_ASYNC_HOOKS := async-hooks
CI_JS_SUITES ?= default
CI_DOC := doctool

# Build and test addons without building anything else
test-ci-native: LOGLEVEL := info
Expand All @@ -412,7 +413,8 @@ test-ci: | clear-stalled build-addons build-addons-napi doc-only
out/Release/cctest --gtest_output=tap:cctest.tap
$(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \
--mode=release --flaky-tests=$(FLAKY_TESTS) \
$(TEST_CI_ARGS) $(CI_ASYNC_HOOKS) $(CI_JS_SUITES) $(CI_NATIVE_SUITES) doctool known_issues
$(TEST_CI_ARGS) $(CI_ASYNC_HOOKS) $(CI_JS_SUITES) $(CI_NATIVE_SUITES) \
$(CI_DOC) known_issues
# Clean up any leftover processes, error if found.
ps awwx | grep Release/node | grep -v grep | cat
@PS_OUT=`ps awwx | grep Release/node | grep -v grep | awk '{print $$1}'`; \
Expand Down Expand Up @@ -448,6 +450,10 @@ test-tick-processor: all
test-hash-seed: all
$(NODE) test/pummel/test-hash-seed.js

test-doc: doc-only
$(MAKE) lint
$(PYTHON) tools/test.py $(CI_DOC)

test-known-issues: all
$(PYTHON) tools/test.py known_issues

Expand Down Expand Up @@ -542,13 +548,13 @@ doc-only: $(apidocs_html) $(apidocs_json)
doc: $(NODE_EXE) doc-only

$(apidoc_dirs):
mkdir -p $@
@mkdir -p $@

out/doc/api/assets/%: doc/api_assets/% out/doc/api/assets
cp $< $@
@cp $< $@

out/doc/%: doc/%
cp -r $< $@
@cp -r $< $@

# check if ./node is actually set, else use user pre-installed binary
gen-json = tools/doc/generate.js --format=json $< > $@
Expand All @@ -566,11 +572,11 @@ gen-doc = \
[ -x $(NODE) ] && $(NODE) $(1) || node $(1)

out/doc/api/%.json: doc/api/%.md
$(call gen-doc, $(gen-json))
@$(call gen-doc, $(gen-json))

# check if ./node is actually set, else use user pre-installed binary
out/doc/api/%.html: doc/api/%.md
$(call gen-doc, $(gen-html))
@$(call gen-doc, $(gen-html))

docopen: $(apidocs_html)
@$(PYTHON) -mwebbrowser file://$(PWD)/out/doc/api/all.html
Expand Down Expand Up @@ -970,9 +976,11 @@ lint-md-clean:
$(RM) -r tools/remark-preset-lint-node/node_modules

lint-md-build:
if [ ! -d tools/remark-cli/node_modules ]; then \
@if [ ! -d tools/remark-cli/node_modules ]; then \
echo "Markdown linter: installing remark-cli into tools/"; \
cd tools/remark-cli && ../../$(NODE) ../../$(NPM) install; fi
if [ ! -d tools/remark-preset-lint-node/node_modules ]; then \
@if [ ! -d tools/remark-preset-lint-node/node_modules ]; then \
echo "Markdown linter: installing remark-preset-lint-node into tools/"; \
cd tools/remark-preset-lint-node && ../../$(NODE) ../../$(NPM) install; fi

lint-md: lint-md-build
Expand All @@ -981,26 +989,38 @@ lint-md: lint-md-build
./*.md doc src lib benchmark tools/doc/ tools/icu/

LINT_JS_TARGETS = benchmark doc lib test tools
LINT_JS_CMD = tools/eslint/bin/eslint.js --cache \
--rulesdir=tools/eslint-rules --ext=.js,.mjs,.md \
$(LINT_JS_TARGETS)

lint-js:
@echo "Running JS linter..."
$(NODE) tools/eslint/bin/eslint.js --cache --rulesdir=tools/eslint-rules --ext=.js,.mjs,.md \
$(LINT_JS_TARGETS)
@if [ -x $(NODE) ]; then \
$(NODE) $(LINT_JS_CMD); \
else \
node $(LINT_JS_CMD); \
fi

jslint: lint-js
@echo "Please use lint-js instead of jslint"

lint-js-ci:
@echo "Running JS linter..."
$(NODE) tools/lint-js.js $(PARALLEL_ARGS) -f tap -o test-eslint.tap \
$(LINT_JS_TARGETS)
@if [ -x $(NODE) ]; then \
$(NODE) tools/lint-js.js $(PARALLEL_ARGS) -f tap -o test-eslint.tap \
$(LINT_JS_TARGETS); \
else \
node tools/lint-js.js $(PARALLEL_ARGS) -f tap -o test-eslint.tap \
$(LINT_JS_TARGETS); \
fi

jslint-ci: lint-js-ci
@echo "Please use lint-js-ci instead of jslint-ci"

LINT_CPP_ADDON_DOC_FILES = $(wildcard test/addons/??_*/*.cc test/addons/??_*/*.h)
LINT_CPP_EXCLUDE ?=
LINT_CPP_EXCLUDE += src/node_root_certs.h
LINT_CPP_EXCLUDE += $(wildcard test/addons/??_*/*.cc test/addons/??_*/*.h)
LINT_CPP_EXCLUDE += $(LINT_CPP_ADDON_DOC_FILES)
LINT_CPP_EXCLUDE += $(wildcard test/addons-napi/??_*/*.cc test/addons-napi/??_*/*.h)
# These files were copied more or less verbatim from V8.
LINT_CPP_EXCLUDE += src/tracing/trace_event.h src/tracing/trace_event_common.h
Expand All @@ -1024,11 +1044,19 @@ LINT_CPP_FILES = $(filter-out $(LINT_CPP_EXCLUDE), $(wildcard \
tools/icu/*.h \
))

# Code blocks don't have newline at the end,
# and the actual filename is generated so it won't match header guards
ADDON_DOC_LINT_FLAGS=-whitespace/ending_newline,-build/header_guard

lint-cpp:
@echo "Running C++ linter..."
@$(PYTHON) tools/cpplint.py $(LINT_CPP_FILES)
@$(PYTHON) tools/check-imports.py

lint-addon-docs: test/addons/.docbuildstamp
@echo "Running C++ linter on addon docs..."
@$(PYTHON) tools/cpplint.py --filter=$(ADDON_DOC_LINT_FLAGS) $(LINT_CPP_ADDON_DOC_FILES)

cpplint: lint-cpp
@echo "Please use lint-cpp instead of cpplint"

Expand All @@ -1038,9 +1066,10 @@ lint:
$(MAKE) lint-js || EXIT_STATUS=$$? ; \
$(MAKE) lint-cpp || EXIT_STATUS=$$? ; \
$(MAKE) lint-md || EXIT_STATUS=$$? ; \
$(MAKE) lint-addon-docs || EXIT_STATUS=$$? ; \
exit $$EXIT_STATUS
CONFLICT_RE=^>>>>>>> [0-9A-Fa-f]+|^<<<<<<< [A-Za-z]+
lint-ci: lint-js-ci lint-cpp lint-md
lint-ci: lint-js-ci lint-cpp lint-md lint-addon-docs
@if ! ( grep -IEqrs "$(CONFLICT_RE)" benchmark deps doc lib src test tools ) \
&& ! ( find . -maxdepth 1 -type f | xargs grep -IEqs "$(CONFLICT_RE)" ); then \
exit 0 ; \
Expand Down Expand Up @@ -1120,6 +1149,7 @@ endif
test-ci \
test-ci-js \
test-ci-native \
test-doc \
test-gc \
test-gc-clean \
test-hash-seed \
Expand Down
2 changes: 1 addition & 1 deletion common.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -291,7 +291,7 @@
'cflags': [ '-pthread', ],
'ldflags': [ '-pthread' ],
}],
[ 'OS in "linux freebsd openbsd solaris android aix"', {
[ 'OS in "linux freebsd openbsd solaris android aix cloudabi"', {
'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ],
'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++0x' ],
'ldflags': [ '-rdynamic' ],
Expand Down
2 changes: 1 addition & 1 deletion configure
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ from gyp_node import run_gyp
parser = optparse.OptionParser()

valid_os = ('win', 'mac', 'solaris', 'freebsd', 'openbsd', 'linux',
'android', 'aix')
'android', 'aix', 'cloudabi')
valid_arch = ('arm', 'arm64', 'ia32', 'mips', 'mipsel', 'mips64el', 'ppc',
'ppc64', 'x32','x64', 'x86', 's390', 's390x')
valid_arm_float_abi = ('soft', 'softfp', 'hard')
Expand Down
12 changes: 10 additions & 2 deletions deps/openssl/asm/x64-elf-gas/bn/x86_64-mont5.s
Original file line number Diff line number Diff line change
Expand Up @@ -3075,11 +3075,19 @@ __bn_sqrx8x_internal:

.align 32
.Lsqrx8x_break:
subq 16+8(%rsp),%r8
xorq %rbp,%rbp
subq 16+8(%rsp),%rbx
adcxq %rbp,%r8
movq 24+8(%rsp),%rcx
adcxq %rbp,%r9
movq 0(%rsi),%rdx
xorl %ebp,%ebp
adcq $0,%r10
movq %r8,0(%rdi)
adcq $0,%r11
adcq $0,%r12
adcq $0,%r13
adcq $0,%r14
adcq $0,%r15
cmpq %rcx,%rdi
je .Lsqrx8x_outer_loop

Expand Down
20 changes: 8 additions & 12 deletions deps/openssl/asm/x64-elf-gas/ec/ecp_nistz256-x86_64.s
Original file line number Diff line number Diff line change
Expand Up @@ -1036,19 +1036,18 @@ __ecp_nistz256_sqr_montx:
adoxq %rbp,%r13
.byte 0x67,0x67
mulxq %rdx,%rcx,%rax
movq %r8,%rdx
movq .Lpoly+24(%rip),%rdx
adoxq %rcx,%r14
shlxq %rsi,%r8,%rcx
adoxq %rax,%r15
shrxq %rsi,%r8,%rax
movq .Lpoly+24(%rip),%rbp
movq %rdx,%rbp


addq %rcx,%r9
adcq %rax,%r10

mulxq %rbp,%rcx,%r8
movq %r9,%rdx
mulxq %r8,%rcx,%r8
adcq %rcx,%r11
shlxq %rsi,%r9,%rcx
adcq $0,%r8
Expand All @@ -1058,8 +1057,7 @@ __ecp_nistz256_sqr_montx:
addq %rcx,%r10
adcq %rax,%r11

mulxq %rbp,%rcx,%r9
movq %r10,%rdx
mulxq %r9,%rcx,%r9
adcq %rcx,%r8
shlxq %rsi,%r10,%rcx
adcq $0,%r9
Expand All @@ -1069,8 +1067,7 @@ __ecp_nistz256_sqr_montx:
addq %rcx,%r11
adcq %rax,%r8

mulxq %rbp,%rcx,%r10
movq %r11,%rdx
mulxq %r10,%rcx,%r10
adcq %rcx,%r9
shlxq %rsi,%r11,%rcx
adcq $0,%r10
Expand All @@ -1080,12 +1077,12 @@ __ecp_nistz256_sqr_montx:
addq %rcx,%r8
adcq %rax,%r9

mulxq %rbp,%rcx,%r11
mulxq %r11,%rcx,%r11
adcq %rcx,%r10
adcq $0,%r11

xorq %rdx,%rdx
adcq %r8,%r12
addq %r8,%r12
movq .Lpoly+8(%rip),%rsi
adcq %r9,%r13
movq %r12,%r8
Expand All @@ -1094,8 +1091,7 @@ __ecp_nistz256_sqr_montx:
movq %r13,%r9
adcq $0,%rdx

xorl %eax,%eax
sbbq $-1,%r12
subq $-1,%r12
movq %r14,%r10
sbbq %rsi,%r13
sbbq $0,%r14
Expand Down
Loading