mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-29 15:52:07 +00:00
Merge mozilla-central to autoland
This commit is contained in:
commit
c30b03e2f0
@ -14,7 +14,7 @@ let whitelist = [
|
||||
{sourceName: /codemirror\.css$/i,
|
||||
isFromDevTools: true},
|
||||
// The debugger uses cross-browser CSS.
|
||||
{sourceName: /devtools\/client\/debugger\/new\/styles.css/i,
|
||||
{sourceName: /devtools\/client\/debugger\/new\/debugger.css/i,
|
||||
isFromDevTools: true},
|
||||
// PDFjs is futureproofing its pseudoselectors, and those rules are dropped.
|
||||
{sourceName: /web\/viewer\.css$/i,
|
||||
|
@ -101,40 +101,48 @@ FormSubmitObserver.prototype =
|
||||
return;
|
||||
}
|
||||
|
||||
// Insure that this is the FormSubmitObserver associated with the
|
||||
// element / window this notification is about.
|
||||
let element = aInvalidElements.queryElementAt(0, Ci.nsISupports);
|
||||
if (this._content != element.ownerGlobal.top.document.defaultView) {
|
||||
return;
|
||||
}
|
||||
// Show a validation message on the first focusable element.
|
||||
for (let i = 0; i < aInvalidElements.length; i++) {
|
||||
// Insure that this is the FormSubmitObserver associated with the
|
||||
// element / window this notification is about.
|
||||
let element = aInvalidElements.queryElementAt(i, Ci.nsISupports);
|
||||
if (this._content != element.ownerGlobal.top.document.defaultView) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!(element instanceof HTMLInputElement ||
|
||||
element instanceof HTMLTextAreaElement ||
|
||||
element instanceof HTMLSelectElement ||
|
||||
element instanceof HTMLButtonElement)) {
|
||||
return;
|
||||
}
|
||||
if (!(element instanceof HTMLInputElement ||
|
||||
element instanceof HTMLTextAreaElement ||
|
||||
element instanceof HTMLSelectElement ||
|
||||
element instanceof HTMLButtonElement)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Update validation message before showing notification
|
||||
this._validationMessage = element.validationMessage;
|
||||
if (!Services.focus.elementIsFocusable(element, 0)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Update validation message before showing notification
|
||||
this._validationMessage = element.validationMessage;
|
||||
|
||||
// Don't connect up to the same element more than once.
|
||||
if (this._element == element) {
|
||||
this._showPopup(element);
|
||||
break;
|
||||
}
|
||||
this._element = element;
|
||||
|
||||
element.focus();
|
||||
|
||||
// Watch for input changes which may change the validation message.
|
||||
element.addEventListener("input", this, false);
|
||||
|
||||
// Watch for focus changes so we can disconnect our listeners and
|
||||
// hide the popup.
|
||||
element.addEventListener("blur", this, false);
|
||||
|
||||
// Don't connect up to the same element more than once.
|
||||
if (this._element == element) {
|
||||
this._showPopup(element);
|
||||
return;
|
||||
break;
|
||||
}
|
||||
this._element = element;
|
||||
|
||||
element.focus();
|
||||
|
||||
// Watch for input changes which may change the validation message.
|
||||
element.addEventListener("input", this, false);
|
||||
|
||||
// Watch for focus changes so we can disconnect our listeners and
|
||||
// hide the popup.
|
||||
element.addEventListener("blur", this, false);
|
||||
|
||||
this._showPopup(element);
|
||||
},
|
||||
|
||||
/*
|
||||
|
@ -45,3 +45,4 @@ support-files =
|
||||
[browser_UsageTelemetry_content.js]
|
||||
[browser_UsageTelemetry_content_aboutHome.js]
|
||||
[browser_urlBar_zoom.js]
|
||||
[browser_bug1319078.js]
|
49
browser/modules/test/browser_bug1319078.js
Normal file
49
browser/modules/test/browser_bug1319078.js
Normal file
@ -0,0 +1,49 @@
|
||||
"use strict";
|
||||
|
||||
var gInvalidFormPopup = document.getElementById('invalid-form-popup');
|
||||
|
||||
function checkPopupHide() {
|
||||
ok(gInvalidFormPopup.state != 'showing' && gInvalidFormPopup.state != 'open',
|
||||
"[Test " + testId + "] The invalid form popup should not be shown");
|
||||
}
|
||||
|
||||
var testId = 0;
|
||||
|
||||
function incrementTest() {
|
||||
testId++;
|
||||
info("Starting next part of test");
|
||||
}
|
||||
|
||||
/**
|
||||
* In this test, we check that no popup appears if the element display is none.
|
||||
*/
|
||||
add_task(function* () {
|
||||
ok(gInvalidFormPopup,
|
||||
"The browser should have a popup to show when a form is invalid");
|
||||
|
||||
incrementTest();
|
||||
let testPage =
|
||||
'data:text/html,' +
|
||||
'<form target="t"><input type="url" placeholder="url" value="http://" style="display: none;"><input id="s" type="button" value="check"></form>';
|
||||
let tab = yield BrowserTestUtils.openNewForegroundTab(gBrowser, testPage);
|
||||
yield BrowserTestUtils.synthesizeMouse("#s", 0, 0, {}, gBrowser.selectedBrowser);
|
||||
|
||||
checkPopupHide();
|
||||
yield BrowserTestUtils.removeTab(tab);
|
||||
});
|
||||
|
||||
/**
|
||||
* In this test, we check that no popup appears if the element visibility is hidden.
|
||||
*/
|
||||
add_task(function* () {
|
||||
incrementTest();
|
||||
let testPage =
|
||||
'data:text/html,' +
|
||||
'<form target="t"><input type="url" placeholder="url" value="http://" style="visibility: hidden;"><input id="s" type="button" value="check"></form>';
|
||||
let tab = yield BrowserTestUtils.openNewForegroundTab(gBrowser, testPage);
|
||||
yield BrowserTestUtils.synthesizeMouse("#s", 0, 0, {}, gBrowser.selectedBrowser);
|
||||
|
||||
checkPopupHide();
|
||||
yield BrowserTestUtils.removeTab(tab);
|
||||
});
|
||||
|
@ -13,7 +13,7 @@
|
||||
<link rel="stylesheet"
|
||||
type="text/css"
|
||||
href="chrome://devtools/content/sourceeditor/codemirror/mozilla.css" />
|
||||
<link rel="stylesheet" type="text/css" href="resource://devtools/client/debugger/new/styles.css" />
|
||||
<link rel="stylesheet" type="text/css" href="resource://devtools/client/debugger/new/debugger.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="mount"></div>
|
||||
@ -26,6 +26,6 @@
|
||||
window,
|
||||
});
|
||||
</script>
|
||||
<script type="text/javascript" src="resource://devtools/client/debugger/new/bundle.js"></script>
|
||||
<script type="text/javascript" src="resource://devtools/client/debugger/new/debugger.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -4,9 +4,9 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
DevToolsModules(
|
||||
'bundle.js',
|
||||
'debugger.css',
|
||||
'debugger.js',
|
||||
'panel.js',
|
||||
'pretty-print-worker.js',
|
||||
'source-map-worker.js',
|
||||
'styles.css'
|
||||
'source-map-worker.js'
|
||||
)
|
||||
|
@ -97,12 +97,6 @@ public:
|
||||
NS_IMETHOD GetScheme(nsACString &result) override;
|
||||
};
|
||||
|
||||
class nsMediaSourceProtocolHandler : public nsHostObjectProtocolHandler
|
||||
{
|
||||
public:
|
||||
NS_IMETHOD GetScheme(nsACString &result) override;
|
||||
};
|
||||
|
||||
class nsFontTableProtocolHandler : public nsHostObjectProtocolHandler
|
||||
{
|
||||
public:
|
||||
|
@ -529,12 +529,12 @@ AudioContext::DecodeAudioData(const ArrayBuffer& aBuffer,
|
||||
if (aSuccessCallback.WasPassed()) {
|
||||
successCallback = &aSuccessCallback.Value();
|
||||
}
|
||||
RefPtr<WebAudioDecodeJob> job(
|
||||
UniquePtr<WebAudioDecodeJob> job(
|
||||
new WebAudioDecodeJob(contentType, this,
|
||||
promise, successCallback, failureCallback));
|
||||
AsyncDecodeWebAudio(contentType.get(), data, length, *job);
|
||||
// Transfer the ownership to mDecodeJobs
|
||||
mDecodeJobs.AppendElement(job.forget());
|
||||
mDecodeJobs.AppendElement(Move(job));
|
||||
|
||||
return promise.forget();
|
||||
}
|
||||
@ -542,7 +542,14 @@ AudioContext::DecodeAudioData(const ArrayBuffer& aBuffer,
|
||||
void
|
||||
AudioContext::RemoveFromDecodeQueue(WebAudioDecodeJob* aDecodeJob)
|
||||
{
|
||||
mDecodeJobs.RemoveElement(aDecodeJob);
|
||||
// Since UniquePtr doesn't provide an operator== which allows you to compare
|
||||
// against raw pointers, we need to iterate manually.
|
||||
for (uint32_t i = 0; i < mDecodeJobs.Length(); ++i) {
|
||||
if (mDecodeJobs[i].get() == aDecodeJob) {
|
||||
mDecodeJobs.RemoveElementAt(i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -13,6 +13,7 @@
|
||||
#include "mozilla/DOMEventTargetHelper.h"
|
||||
#include "mozilla/MemoryReporting.h"
|
||||
#include "mozilla/dom/TypedArray.h"
|
||||
#include "mozilla/UniquePtr.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsCycleCollectionParticipant.h"
|
||||
#include "nsHashKeys.h"
|
||||
@ -348,7 +349,7 @@ private:
|
||||
AudioContextState mAudioContextState;
|
||||
RefPtr<AudioDestinationNode> mDestination;
|
||||
RefPtr<AudioListener> mListener;
|
||||
nsTArray<RefPtr<WebAudioDecodeJob> > mDecodeJobs;
|
||||
nsTArray<UniquePtr<WebAudioDecodeJob> > mDecodeJobs;
|
||||
// This array is used to keep the suspend/resume/close promises alive until
|
||||
// they are resolved, so we can safely pass them accross threads.
|
||||
nsTArray<RefPtr<Promise>> mPromiseGripArray;
|
||||
|
@ -34,27 +34,6 @@ namespace mozilla {
|
||||
|
||||
extern LazyLogModule gMediaDecoderLog;
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(WebAudioDecodeJob)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(WebAudioDecodeJob)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mContext)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mOutput)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mSuccessCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mFailureCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(WebAudioDecodeJob)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mContext)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mOutput)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mSuccessCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mFailureCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(WebAudioDecodeJob)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
NS_IMPL_CYCLE_COLLECTION_ROOT_NATIVE(WebAudioDecodeJob, AddRef)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNROOT_NATIVE(WebAudioDecodeJob, Release)
|
||||
|
||||
using namespace dom;
|
||||
|
||||
class ReportResultTask final : public Runnable
|
||||
|
@ -35,9 +35,7 @@ struct WebAudioDecodeJob final
|
||||
dom::Promise* aPromise,
|
||||
dom::DecodeSuccessCallback* aSuccessCallback = nullptr,
|
||||
dom::DecodeErrorCallback* aFailureCallback = nullptr);
|
||||
|
||||
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebAudioDecodeJob)
|
||||
NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebAudioDecodeJob)
|
||||
~WebAudioDecodeJob();
|
||||
|
||||
enum ErrorCode {
|
||||
NoError,
|
||||
@ -65,9 +63,6 @@ struct WebAudioDecodeJob final
|
||||
RefPtr<dom::DecodeErrorCallback> mFailureCallback; // can be null
|
||||
RefPtr<dom::AudioBuffer> mOutput;
|
||||
RefPtr<ThreadSharedFloatArrayBufferList> mBuffer;
|
||||
|
||||
private:
|
||||
~WebAudioDecodeJob();
|
||||
};
|
||||
|
||||
void AsyncDecodeWebAudio(const char* aContentType, uint8_t* aBuffer,
|
||||
|
@ -1140,6 +1140,13 @@ ModuleBuilder::processExport(frontend::ParseNode* pn)
|
||||
bool isDefault = pn->getKind() == PNK_EXPORT_DEFAULT;
|
||||
ParseNode* kid = isDefault ? pn->pn_left : pn->pn_kid;
|
||||
|
||||
if (isDefault && pn->pn_right) {
|
||||
// This is an export default containing an expression.
|
||||
RootedAtom localName(cx_, cx_->names().starDefaultStar);
|
||||
RootedAtom exportName(cx_, cx_->names().default_);
|
||||
return appendExportEntry(exportName, localName);
|
||||
}
|
||||
|
||||
switch (kid->getKind()) {
|
||||
case PNK_EXPORT_SPEC_LIST:
|
||||
MOZ_ASSERT(!isDefault);
|
||||
@ -1153,53 +1160,46 @@ ModuleBuilder::processExport(frontend::ParseNode* pn)
|
||||
break;
|
||||
|
||||
case PNK_CLASS: {
|
||||
const ClassNode& cls = kid->as<ClassNode>();
|
||||
MOZ_ASSERT(cls.names());
|
||||
RootedAtom localName(cx_, cls.names()->innerBinding()->pn_atom);
|
||||
RootedAtom exportName(cx_, isDefault ? cx_->names().default_ : localName.get());
|
||||
if (!appendExportEntry(exportName, localName))
|
||||
return false;
|
||||
break;
|
||||
const ClassNode& cls = kid->as<ClassNode>();
|
||||
MOZ_ASSERT(cls.names());
|
||||
RootedAtom localName(cx_, cls.names()->innerBinding()->pn_atom);
|
||||
RootedAtom exportName(cx_, isDefault ? cx_->names().default_ : localName.get());
|
||||
if (!appendExportEntry(exportName, localName))
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
|
||||
case PNK_VAR:
|
||||
case PNK_CONST:
|
||||
case PNK_LET: {
|
||||
MOZ_ASSERT(kid->isArity(PN_LIST));
|
||||
for (ParseNode* var = kid->pn_head; var; var = var->pn_next) {
|
||||
if (var->isKind(PNK_ASSIGN))
|
||||
var = var->pn_left;
|
||||
MOZ_ASSERT(var->isKind(PNK_NAME));
|
||||
RootedAtom localName(cx_, var->pn_atom);
|
||||
RootedAtom exportName(cx_, isDefault ? cx_->names().default_ : localName.get());
|
||||
if (!appendExportEntry(exportName, localName))
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
MOZ_ASSERT(kid->isArity(PN_LIST));
|
||||
for (ParseNode* var = kid->pn_head; var; var = var->pn_next) {
|
||||
if (var->isKind(PNK_ASSIGN))
|
||||
var = var->pn_left;
|
||||
MOZ_ASSERT(var->isKind(PNK_NAME));
|
||||
RootedAtom localName(cx_, var->pn_atom);
|
||||
RootedAtom exportName(cx_, isDefault ? cx_->names().default_ : localName.get());
|
||||
if (!appendExportEntry(exportName, localName))
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case PNK_FUNCTION: {
|
||||
RootedFunction func(cx_, kid->pn_funbox->function());
|
||||
if (!func->isArrow()) {
|
||||
RootedAtom localName(cx_, func->explicitName());
|
||||
RootedAtom exportName(cx_, isDefault ? cx_->names().default_ : localName.get());
|
||||
MOZ_ASSERT_IF(isDefault, localName);
|
||||
if (!appendExportEntry(exportName, localName))
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
MOZ_FALLTHROUGH; // Arrow functions are handled below.
|
||||
|
||||
default:
|
||||
MOZ_ASSERT(isDefault);
|
||||
RootedAtom localName(cx_, cx_->names().starDefaultStar);
|
||||
RootedAtom exportName(cx_, cx_->names().default_);
|
||||
RootedFunction func(cx_, kid->pn_funbox->function());
|
||||
MOZ_ASSERT(!func->isArrow());
|
||||
RootedAtom localName(cx_, func->explicitName());
|
||||
RootedAtom exportName(cx_, isDefault ? cx_->names().default_ : localName.get());
|
||||
MOZ_ASSERT_IF(isDefault, localName);
|
||||
if (!appendExportEntry(exportName, localName))
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
MOZ_CRASH("Unexpected parse node");
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
2
js/src/jit-test/tests/modules/bug-1320993.js
Normal file
2
js/src/jit-test/tests/modules/bug-1320993.js
Normal file
@ -0,0 +1,2 @@
|
||||
parseModule("export default (class {})");
|
||||
parseModule("export default (class A {})");
|
@ -1377,6 +1377,42 @@ class MacroAssembler : public MacroAssemblerSpecific
|
||||
void wasmStore(const wasm::MemoryAccessDesc& access, AnyRegister value, Operand dstAddr) DEFINED_ON(x86, x64);
|
||||
void wasmStoreI64(const wasm::MemoryAccessDesc& access, Register64 value, Operand dstAddr) DEFINED_ON(x86);
|
||||
|
||||
// For all the ARM wasmLoad and wasmStore functions, `ptr` MUST equal
|
||||
// `ptrScratch`, and that register will be updated based on conditions
|
||||
// listed below (where it is only mentioned as `ptr`).
|
||||
|
||||
// `ptr` will be updated if access.offset() != 0 or access.type() == Scalar::Int64.
|
||||
void wasmLoad(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch, AnyRegister output) DEFINED_ON(arm);
|
||||
void wasmLoadI64(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch, Register64 output) DEFINED_ON(arm);
|
||||
void wasmStore(const wasm::MemoryAccessDesc& access, AnyRegister value, Register ptr, Register ptrScratch) DEFINED_ON(arm);
|
||||
void wasmStoreI64(const wasm::MemoryAccessDesc& access, Register64 value, Register ptr, Register ptrScratch) DEFINED_ON(arm);
|
||||
|
||||
// `ptr` will always be updated.
|
||||
void wasmUnalignedLoad(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch,
|
||||
Register output, Register tmp) DEFINED_ON(arm);
|
||||
|
||||
// `ptr` will always be updated and `tmp1` is always needed. `tmp2` is
|
||||
// needed for Float32; `tmp2` and `tmp3` are needed for Float64. Temps must
|
||||
// be Invalid when they are not needed.
|
||||
void wasmUnalignedLoadFP(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch,
|
||||
FloatRegister output, Register tmp1, Register tmp2, Register tmp3) DEFINED_ON(arm);
|
||||
|
||||
// `ptr` will always be updated.
|
||||
void wasmUnalignedLoadI64(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch,
|
||||
Register64 output, Register tmp) DEFINED_ON(arm);
|
||||
|
||||
// `ptr` and `value` will always be updated.
|
||||
void wasmUnalignedStore(const wasm::MemoryAccessDesc& access, Register value, Register ptr, Register ptrScratch)
|
||||
DEFINED_ON(arm);
|
||||
|
||||
// `ptr` will always be updated.
|
||||
void wasmUnalignedStoreFP(const wasm::MemoryAccessDesc& access, FloatRegister floatValue, Register ptr,
|
||||
Register ptrScratch, Register tmp) DEFINED_ON(arm);
|
||||
|
||||
// `ptr` will always be updated.
|
||||
void wasmUnalignedStoreI64(const wasm::MemoryAccessDesc& access, Register64 value, Register ptr, Register ptrScratch,
|
||||
Register tmp) DEFINED_ON(arm);
|
||||
|
||||
// wasm specific methods, used in both the wasm baseline compiler and ion.
|
||||
void wasmTruncateDoubleToUInt32(FloatRegister input, Register output, Label* oolEntry) DEFINED_ON(x86, x64, arm);
|
||||
void wasmTruncateDoubleToInt32(FloatRegister input, Register output, Label* oolEntry) DEFINED_ON(x86_shared, arm);
|
||||
|
@ -2366,69 +2366,20 @@ void
|
||||
CodeGeneratorARM::emitWasmLoad(T* lir)
|
||||
{
|
||||
const MWasmLoad* mir = lir->mir();
|
||||
MIRType resultType = mir->type();
|
||||
Register ptr;
|
||||
|
||||
uint32_t offset = mir->access().offset();
|
||||
MOZ_ASSERT(offset < wasm::OffsetGuardLimit);
|
||||
|
||||
Register ptr = ToRegister(lir->ptr());
|
||||
Scalar::Type type = mir->access().type();
|
||||
|
||||
// Maybe add the offset.
|
||||
if (offset || type == Scalar::Int64) {
|
||||
ScratchRegisterScope scratch(masm);
|
||||
Register ptrPlusOffset = ToRegister(lir->ptrCopy());
|
||||
if (offset)
|
||||
masm.ma_add(Imm32(offset), ptrPlusOffset, scratch);
|
||||
ptr = ptrPlusOffset;
|
||||
if (mir->access().offset() || mir->access().type() == Scalar::Int64) {
|
||||
ptr = ToRegister(lir->ptrCopy());
|
||||
} else {
|
||||
MOZ_ASSERT(lir->ptrCopy()->isBogusTemp());
|
||||
ptr = ToRegister(lir->ptr());
|
||||
}
|
||||
|
||||
bool isSigned = type == Scalar::Int8 || type == Scalar::Int16 || type == Scalar::Int32 ||
|
||||
type == Scalar::Int64;
|
||||
unsigned byteSize = mir->access().byteSize();
|
||||
|
||||
masm.memoryBarrier(mir->access().barrierBefore());
|
||||
|
||||
BufferOffset load;
|
||||
if (mir->type() == MIRType::Int64) {
|
||||
Register64 output = ToOutRegister64(lir);
|
||||
if (type == Scalar::Int64) {
|
||||
MOZ_ASSERT(INT64LOW_OFFSET == 0);
|
||||
|
||||
load = masm.ma_dataTransferN(IsLoad, 32, /* signed = */ false, HeapReg, ptr, output.low);
|
||||
masm.append(mir->access(), load.getOffset(), masm.framePushed());
|
||||
|
||||
masm.as_add(ptr, ptr, Imm8(INT64HIGH_OFFSET));
|
||||
|
||||
load = masm.ma_dataTransferN(IsLoad, 32, isSigned, HeapReg, ptr, output.high);
|
||||
masm.append(mir->access(), load.getOffset(), masm.framePushed());
|
||||
} else {
|
||||
load = masm.ma_dataTransferN(IsLoad, byteSize * 8, isSigned, HeapReg, ptr, output.low);
|
||||
masm.append(mir->access(), load.getOffset(), masm.framePushed());
|
||||
|
||||
if (isSigned)
|
||||
masm.ma_asr(Imm32(31), output.low, output.high);
|
||||
else
|
||||
masm.ma_mov(Imm32(0), output.high);
|
||||
}
|
||||
} else {
|
||||
AnyRegister output = ToAnyRegister(lir->output());
|
||||
bool isFloat = output.isFloat();
|
||||
if (isFloat) {
|
||||
MOZ_ASSERT((byteSize == 4) == output.fpu().isSingle());
|
||||
ScratchRegisterScope scratch(masm);
|
||||
masm.ma_add(HeapReg, ptr, scratch);
|
||||
|
||||
load = masm.ma_vldr(Operand(Address(scratch, 0)).toVFPAddr(), output.fpu());
|
||||
masm.append(mir->access(), load.getOffset(), masm.framePushed());
|
||||
} else {
|
||||
load = masm.ma_dataTransferN(IsLoad, byteSize * 8, isSigned, HeapReg, ptr, output.gpr());
|
||||
masm.append(mir->access(), load.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
masm.memoryBarrier(mir->access().barrierAfter());
|
||||
if (resultType == MIRType::Int64)
|
||||
masm.wasmLoadI64(mir->access(), ptr, ptr, ToOutRegister64(lir));
|
||||
else
|
||||
masm.wasmLoad(mir->access(), ptr, ptr, ToAnyRegister(lir->output()));
|
||||
}
|
||||
|
||||
void
|
||||
@ -2448,71 +2399,22 @@ void
|
||||
CodeGeneratorARM::emitWasmUnalignedLoad(T* lir)
|
||||
{
|
||||
const MWasmLoad* mir = lir->mir();
|
||||
|
||||
uint32_t offset = mir->access().offset();
|
||||
MOZ_ASSERT(offset < wasm::OffsetGuardLimit);
|
||||
MIRType resultType = mir->type();
|
||||
|
||||
Register ptr = ToRegister(lir->ptrCopy());
|
||||
if (offset) {
|
||||
ScratchRegisterScope scratch(masm);
|
||||
masm.ma_add(Imm32(offset), ptr, scratch);
|
||||
Register tmp1 = ToRegister(lir->getTemp(1));
|
||||
|
||||
if (resultType == MIRType::Int64) {
|
||||
masm.wasmUnalignedLoadI64(mir->access(), ptr, ptr, ToOutRegister64(lir), tmp1);
|
||||
} else if (IsFloatingPointType(resultType)) {
|
||||
Register tmp2(ToRegister(lir->getTemp(2)));
|
||||
Register tmp3(Register::Invalid());
|
||||
if (mir->access().byteSize() == 8)
|
||||
tmp3 = ToRegister(lir->getTemp(3));
|
||||
masm.wasmUnalignedLoadFP(mir->access(), ptr, ptr, ToFloatRegister(lir->output()), tmp1, tmp2, tmp3);
|
||||
} else {
|
||||
masm.wasmUnalignedLoad(mir->access(), ptr, ptr, ToRegister(lir->output()), tmp1);
|
||||
}
|
||||
|
||||
// Add HeapReg to ptr, so we can use base+index addressing in the byte loads.
|
||||
masm.ma_add(HeapReg, ptr);
|
||||
|
||||
unsigned byteSize = mir->access().byteSize();
|
||||
Scalar::Type type = mir->access().type();
|
||||
bool isSigned = type == Scalar::Int8 || type == Scalar::Int16 || type == Scalar::Int32 ||
|
||||
type == Scalar::Int64;
|
||||
|
||||
MIRType mirType = mir->type();
|
||||
|
||||
Register tmp = ToRegister(lir->getTemp(1));
|
||||
|
||||
Register low;
|
||||
if (IsFloatingPointType(mirType))
|
||||
low = ToRegister(lir->getTemp(2));
|
||||
else if (mirType == MIRType::Int64)
|
||||
low = ToOutRegister64(lir).low;
|
||||
else
|
||||
low = ToRegister(lir->output());
|
||||
|
||||
MOZ_ASSERT(low != tmp);
|
||||
MOZ_ASSERT(low != ptr);
|
||||
|
||||
masm.memoryBarrier(mir->access().barrierBefore());
|
||||
|
||||
masm.emitUnalignedLoad(isSigned, Min(byteSize, 4u), ptr, tmp, low);
|
||||
|
||||
if (IsFloatingPointType(mirType)) {
|
||||
FloatRegister output = ToFloatRegister(lir->output());
|
||||
if (byteSize == 4) {
|
||||
MOZ_ASSERT(output.isSingle());
|
||||
masm.ma_vxfer(low, output);
|
||||
} else {
|
||||
MOZ_ASSERT(byteSize == 8);
|
||||
MOZ_ASSERT(output.isDouble());
|
||||
Register high = ToRegister(lir->getTemp(3));
|
||||
masm.emitUnalignedLoad(/* signed */ false, 4, ptr, tmp, high, /* offset */ 4);
|
||||
masm.ma_vxfer(low, high, output);
|
||||
}
|
||||
} else if (mirType == MIRType::Int64) {
|
||||
Register64 output = ToOutRegister64(lir);
|
||||
if (type == Scalar::Int64) {
|
||||
MOZ_ASSERT(byteSize == 8);
|
||||
masm.emitUnalignedLoad(isSigned, 4, ptr, tmp, output.high, /* offset */ 4);
|
||||
} else {
|
||||
MOZ_ASSERT(byteSize <= 4);
|
||||
// Propagate sign.
|
||||
if (isSigned)
|
||||
masm.ma_asr(Imm32(31), output.low, output.high);
|
||||
else
|
||||
masm.ma_mov(Imm32(0), output.high);
|
||||
}
|
||||
}
|
||||
|
||||
masm.memoryBarrier(mir->access().barrierAfter());
|
||||
}
|
||||
|
||||
void
|
||||
@ -2545,60 +2447,22 @@ void
|
||||
CodeGeneratorARM::emitWasmStore(T* lir)
|
||||
{
|
||||
const MWasmStore* mir = lir->mir();
|
||||
|
||||
uint32_t offset = mir->access().offset();
|
||||
MOZ_ASSERT(offset < wasm::OffsetGuardLimit);
|
||||
|
||||
Register ptr = ToRegister(lir->ptr());
|
||||
unsigned byteSize = mir->access().byteSize();
|
||||
Scalar::Type type = mir->access().type();
|
||||
Scalar::Type accessType = mir->access().type();
|
||||
Register ptr;
|
||||
|
||||
// Maybe add the offset.
|
||||
if (offset || type == Scalar::Int64) {
|
||||
ScratchRegisterScope scratch(masm);
|
||||
Register ptrPlusOffset = ToRegister(lir->ptrCopy());
|
||||
if (offset)
|
||||
masm.ma_add(Imm32(offset), ptrPlusOffset, scratch);
|
||||
ptr = ptrPlusOffset;
|
||||
if (mir->access().offset() || accessType == Scalar::Int64) {
|
||||
ptr = ToRegister(lir->ptrCopy());
|
||||
} else {
|
||||
MOZ_ASSERT(lir->ptrCopy()->isBogusTemp());
|
||||
ptr = ToRegister(lir->ptr());
|
||||
}
|
||||
|
||||
masm.memoryBarrier(mir->access().barrierBefore());
|
||||
|
||||
BufferOffset store;
|
||||
if (type == Scalar::Int64) {
|
||||
MOZ_ASSERT(INT64LOW_OFFSET == 0);
|
||||
|
||||
Register64 value = ToRegister64(lir->getInt64Operand(lir->ValueIndex));
|
||||
|
||||
store = masm.ma_dataTransferN(IsStore, 32 /* bits */, /* signed */ false, HeapReg, ptr, value.low);
|
||||
masm.append(mir->access(), store.getOffset(), masm.framePushed());
|
||||
|
||||
masm.as_add(ptr, ptr, Imm8(INT64HIGH_OFFSET));
|
||||
|
||||
store = masm.ma_dataTransferN(IsStore, 32 /* bits */, /* signed */ true, HeapReg, ptr, value.high);
|
||||
masm.append(mir->access(), store.getOffset(), masm.framePushed());
|
||||
} else {
|
||||
AnyRegister value = ToAnyRegister(lir->getOperand(lir->ValueIndex));
|
||||
if (value.isFloat()) {
|
||||
ScratchRegisterScope scratch(masm);
|
||||
FloatRegister val = value.fpu();
|
||||
MOZ_ASSERT((byteSize == 4) == val.isSingle());
|
||||
masm.ma_add(HeapReg, ptr, scratch);
|
||||
|
||||
store = masm.ma_vstr(val, Operand(Address(scratch, 0)).toVFPAddr());
|
||||
masm.append(mir->access(), store.getOffset(), masm.framePushed());
|
||||
} else {
|
||||
bool isSigned = type == Scalar::Uint32 || type == Scalar::Int32; // see AsmJSStoreHeap;
|
||||
Register val = value.gpr();
|
||||
|
||||
store = masm.ma_dataTransferN(IsStore, 8 * byteSize /* bits */, isSigned, HeapReg, ptr, val);
|
||||
masm.append(mir->access(), store.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
masm.memoryBarrier(mir->access().barrierAfter());
|
||||
if (accessType == Scalar::Int64)
|
||||
masm.wasmStoreI64(mir->access(), ToRegister64(lir->getInt64Operand(lir->ValueIndex)),
|
||||
ptr, ptr);
|
||||
else
|
||||
masm.wasmStore(mir->access(), ToAnyRegister(lir->getOperand(lir->ValueIndex)), ptr, ptr);
|
||||
}
|
||||
|
||||
void
|
||||
@ -2618,51 +2482,20 @@ void
|
||||
CodeGeneratorARM::emitWasmUnalignedStore(T* lir)
|
||||
{
|
||||
const MWasmStore* mir = lir->mir();
|
||||
|
||||
uint32_t offset = mir->access().offset();
|
||||
MOZ_ASSERT(offset < wasm::OffsetGuardLimit);
|
||||
Scalar::Type accessType = mir->access().type();
|
||||
|
||||
Register ptr = ToRegister(lir->ptrCopy());
|
||||
if (offset) {
|
||||
ScratchRegisterScope scratch(masm);
|
||||
masm.ma_add(Imm32(offset), ptr, scratch);
|
||||
Register valOrTmp = ToRegister(lir->valueHelper());
|
||||
if (accessType == Scalar::Int64) {
|
||||
masm.wasmUnalignedStoreI64(mir->access(),
|
||||
ToRegister64(lir->getInt64Operand(LWasmUnalignedStoreI64::ValueIndex)),
|
||||
ptr, ptr, valOrTmp);
|
||||
} else if (accessType == Scalar::Float32 || accessType == Scalar::Float64) {
|
||||
FloatRegister value = ToFloatRegister(lir->getOperand(LWasmUnalignedStore::ValueIndex));
|
||||
masm.wasmUnalignedStoreFP(mir->access(), value, ptr, ptr, valOrTmp);
|
||||
} else {
|
||||
masm.wasmUnalignedStore(mir->access(), valOrTmp, ptr, ptr);
|
||||
}
|
||||
|
||||
// Add HeapReg to ptr, so we can use base+index addressing in the byte loads.
|
||||
masm.ma_add(HeapReg, ptr);
|
||||
|
||||
MIRType mirType = mir->value()->type();
|
||||
|
||||
masm.memoryBarrier(mir->access().barrierAfter());
|
||||
|
||||
Register val = ToRegister(lir->valueHelper());
|
||||
if (IsFloatingPointType(mirType)) {
|
||||
masm.ma_vxfer(ToFloatRegister(lir->getOperand(LWasmUnalignedStore::ValueIndex)), val);
|
||||
} else if (mirType == MIRType::Int64) {
|
||||
Register64 input = ToRegister64(lir->getInt64Operand(LWasmUnalignedStoreI64::ValueIndex));
|
||||
if (input.low != val)
|
||||
masm.ma_mov(input.low, val);
|
||||
}
|
||||
|
||||
unsigned byteSize = mir->access().byteSize();
|
||||
masm.emitUnalignedStore(Min(byteSize, 4u), ptr, val);
|
||||
|
||||
if (byteSize > 4) {
|
||||
// It's a double or an int64 load.
|
||||
// Load the high 32 bits when counter == 4.
|
||||
if (IsFloatingPointType(mirType)) {
|
||||
FloatRegister fp = ToFloatRegister(lir->getOperand(LWasmUnalignedStore::ValueIndex));
|
||||
MOZ_ASSERT(fp.isDouble());
|
||||
ScratchRegisterScope scratch(masm);
|
||||
masm.ma_vxfer(fp, scratch, val);
|
||||
} else {
|
||||
MOZ_ASSERT(mirType == MIRType::Int64);
|
||||
masm.ma_mov(ToRegister64(lir->getInt64Operand(LWasmUnalignedStoreI64::ValueIndex)).high, val);
|
||||
}
|
||||
masm.emitUnalignedStore(4, ptr, val, /* offset */ 4);
|
||||
}
|
||||
|
||||
masm.memoryBarrier(mir->access().barrierBefore());
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -5436,6 +5436,80 @@ MacroAssembler::wasmTruncateFloat32ToInt32(FloatRegister input, Register output,
|
||||
wasmTruncateToInt32(input, output, MIRType::Float32, /* isUnsigned= */ false, oolEntry);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmLoad(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch,
|
||||
AnyRegister output)
|
||||
{
|
||||
wasmLoadImpl(access, ptr, ptrScratch, output, Register64::Invalid());
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmLoadI64(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch,
|
||||
Register64 output)
|
||||
{
|
||||
wasmLoadImpl(access, ptr, ptrScratch, AnyRegister(), output);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmStore(const wasm::MemoryAccessDesc& access, AnyRegister value, Register ptr,
|
||||
Register ptrScratch)
|
||||
{
|
||||
wasmStoreImpl(access, value, Register64::Invalid(), ptr, ptrScratch);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmStoreI64(const wasm::MemoryAccessDesc& access, Register64 value, Register ptr,
|
||||
Register ptrScratch)
|
||||
{
|
||||
wasmStoreImpl(access, AnyRegister(), value, ptr, ptrScratch);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmUnalignedLoad(const wasm::MemoryAccessDesc& access, Register ptr,
|
||||
Register ptrScratch, Register output, Register tmp)
|
||||
{
|
||||
wasmUnalignedLoadImpl(access, ptr, ptrScratch, AnyRegister(output), Register64::Invalid(), tmp,
|
||||
Register::Invalid(), Register::Invalid());
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmUnalignedLoadFP(const wasm::MemoryAccessDesc& access, Register ptr,
|
||||
Register ptrScratch, FloatRegister outFP, Register tmp1,
|
||||
Register tmp2, Register tmp3)
|
||||
{
|
||||
wasmUnalignedLoadImpl(access, ptr, ptrScratch, AnyRegister(outFP), Register64::Invalid(),
|
||||
tmp1, tmp2, tmp3);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmUnalignedLoadI64(const wasm::MemoryAccessDesc& access, Register ptr,
|
||||
Register ptrScratch, Register64 out64, Register tmp)
|
||||
{
|
||||
wasmUnalignedLoadImpl(access, ptr, ptrScratch, AnyRegister(), out64, tmp, Register::Invalid(),
|
||||
Register::Invalid());
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmUnalignedStore(const wasm::MemoryAccessDesc& access, Register value,
|
||||
Register ptr, Register ptrScratch)
|
||||
{
|
||||
wasmUnalignedStoreImpl(access, FloatRegister(), Register64::Invalid(), ptr, ptrScratch, value);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmUnalignedStoreFP(const wasm::MemoryAccessDesc& access, FloatRegister floatVal,
|
||||
Register ptr, Register ptrScratch, Register tmp)
|
||||
{
|
||||
wasmUnalignedStoreImpl(access, floatVal, Register64::Invalid(), ptr, ptrScratch, tmp);
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssembler::wasmUnalignedStoreI64(const wasm::MemoryAccessDesc& access, Register64 val64,
|
||||
Register ptr, Register ptrScratch, Register tmp)
|
||||
{
|
||||
wasmUnalignedStoreImpl(access, FloatRegister(), val64, ptr, ptrScratch, tmp);
|
||||
}
|
||||
|
||||
//}}} check_macroassembler_style
|
||||
|
||||
void
|
||||
@ -5580,6 +5654,248 @@ MacroAssemblerARM::outOfLineWasmTruncateToIntCheck(FloatRegister input, MIRType
|
||||
asMasm().framePushed()));
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARM::wasmLoadImpl(const wasm::MemoryAccessDesc& access, Register ptr,
|
||||
Register ptrScratch, AnyRegister output, Register64 out64)
|
||||
{
|
||||
MOZ_ASSERT(ptr == ptrScratch);
|
||||
|
||||
uint32_t offset = access.offset();
|
||||
MOZ_ASSERT(offset < wasm::OffsetGuardLimit);
|
||||
|
||||
Scalar::Type type = access.type();
|
||||
|
||||
// Maybe add the offset.
|
||||
if (offset || type == Scalar::Int64) {
|
||||
ScratchRegisterScope scratch(asMasm());
|
||||
if (offset)
|
||||
ma_add(Imm32(offset), ptr, scratch);
|
||||
}
|
||||
|
||||
bool isSigned = type == Scalar::Int8 || type == Scalar::Int16 || type == Scalar::Int32 ||
|
||||
type == Scalar::Int64;
|
||||
unsigned byteSize = access.byteSize();
|
||||
|
||||
asMasm().memoryBarrier(access.barrierBefore());
|
||||
|
||||
uint32_t framePushed = asMasm().framePushed();
|
||||
BufferOffset load;
|
||||
if (out64 != Register64::Invalid()) {
|
||||
if (type == Scalar::Int64) {
|
||||
MOZ_ASSERT(INT64LOW_OFFSET == 0);
|
||||
|
||||
load = ma_dataTransferN(IsLoad, 32, /* signed = */ false, HeapReg, ptr, out64.low);
|
||||
append(access, load.getOffset(), framePushed);
|
||||
|
||||
as_add(ptr, ptr, Imm8(INT64HIGH_OFFSET));
|
||||
|
||||
load = ma_dataTransferN(IsLoad, 32, isSigned, HeapReg, ptr, out64.high);
|
||||
append(access, load.getOffset(), framePushed);
|
||||
} else {
|
||||
load = ma_dataTransferN(IsLoad, byteSize * 8, isSigned, HeapReg, ptr, out64.low);
|
||||
append(access, load.getOffset(), framePushed);
|
||||
|
||||
if (isSigned)
|
||||
ma_asr(Imm32(31), out64.low, out64.high);
|
||||
else
|
||||
ma_mov(Imm32(0), out64.high);
|
||||
}
|
||||
} else {
|
||||
bool isFloat = output.isFloat();
|
||||
if (isFloat) {
|
||||
MOZ_ASSERT((byteSize == 4) == output.fpu().isSingle());
|
||||
ScratchRegisterScope scratch(asMasm());
|
||||
ma_add(HeapReg, ptr, scratch);
|
||||
|
||||
load = ma_vldr(Operand(Address(scratch, 0)).toVFPAddr(), output.fpu());
|
||||
append(access, load.getOffset(), framePushed);
|
||||
} else {
|
||||
load = ma_dataTransferN(IsLoad, byteSize * 8, isSigned, HeapReg, ptr, output.gpr());
|
||||
append(access, load.getOffset(), framePushed);
|
||||
}
|
||||
}
|
||||
|
||||
asMasm().memoryBarrier(access.barrierAfter());
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARM::wasmStoreImpl(const wasm::MemoryAccessDesc& access, AnyRegister value,
|
||||
Register64 val64, Register ptr, Register ptrScratch)
|
||||
{
|
||||
MOZ_ASSERT(ptr == ptrScratch);
|
||||
|
||||
uint32_t offset = access.offset();
|
||||
MOZ_ASSERT(offset < wasm::OffsetGuardLimit);
|
||||
|
||||
unsigned byteSize = access.byteSize();
|
||||
Scalar::Type type = access.type();
|
||||
|
||||
// Maybe add the offset.
|
||||
if (offset || type == Scalar::Int64) {
|
||||
ScratchRegisterScope scratch(asMasm());
|
||||
if (offset)
|
||||
ma_add(Imm32(offset), ptr, scratch);
|
||||
}
|
||||
|
||||
asMasm().memoryBarrier(access.barrierBefore());
|
||||
|
||||
uint32_t framePushed = asMasm().framePushed();
|
||||
|
||||
BufferOffset store;
|
||||
if (type == Scalar::Int64) {
|
||||
MOZ_ASSERT(INT64LOW_OFFSET == 0);
|
||||
|
||||
store = ma_dataTransferN(IsStore, 32 /* bits */, /* signed */ false, HeapReg, ptr, val64.low);
|
||||
append(access, store.getOffset(), framePushed);
|
||||
|
||||
as_add(ptr, ptr, Imm8(INT64HIGH_OFFSET));
|
||||
|
||||
store = ma_dataTransferN(IsStore, 32 /* bits */, /* signed */ true, HeapReg, ptr, val64.high);
|
||||
append(access, store.getOffset(), framePushed);
|
||||
} else {
|
||||
if (value.isFloat()) {
|
||||
ScratchRegisterScope scratch(asMasm());
|
||||
FloatRegister val = value.fpu();
|
||||
MOZ_ASSERT((byteSize == 4) == val.isSingle());
|
||||
ma_add(HeapReg, ptr, scratch);
|
||||
|
||||
store = ma_vstr(val, Operand(Address(scratch, 0)).toVFPAddr());
|
||||
append(access, store.getOffset(), framePushed);
|
||||
} else {
|
||||
bool isSigned = type == Scalar::Uint32 || type == Scalar::Int32; // see AsmJSStoreHeap;
|
||||
Register val = value.gpr();
|
||||
|
||||
store = ma_dataTransferN(IsStore, 8 * byteSize /* bits */, isSigned, HeapReg, ptr, val);
|
||||
append(access, store.getOffset(), framePushed);
|
||||
}
|
||||
}
|
||||
|
||||
asMasm().memoryBarrier(access.barrierAfter());
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARM::wasmUnalignedLoadImpl(const wasm::MemoryAccessDesc& access, Register ptr,
|
||||
Register ptrScratch, AnyRegister outAny, Register64 out64,
|
||||
Register tmp, Register tmp2, Register tmp3)
|
||||
{
|
||||
MOZ_ASSERT(ptr == ptrScratch);
|
||||
MOZ_ASSERT_IF(access.type() != Scalar::Float32 && access.type() != Scalar::Float64,
|
||||
tmp2 == Register::Invalid() && tmp3 == Register::Invalid());
|
||||
MOZ_ASSERT_IF(access.type() == Scalar::Float32,
|
||||
tmp2 != Register::Invalid() && tmp3 == Register::Invalid());
|
||||
MOZ_ASSERT_IF(access.type() == Scalar::Float64,
|
||||
tmp2 != Register::Invalid() && tmp3 != Register::Invalid());
|
||||
|
||||
uint32_t offset = access.offset();
|
||||
MOZ_ASSERT(offset < wasm::OffsetGuardLimit);
|
||||
|
||||
if (offset) {
|
||||
ScratchRegisterScope scratch(asMasm());
|
||||
ma_add(Imm32(offset), ptr, scratch);
|
||||
}
|
||||
|
||||
// Add HeapReg to ptr, so we can use base+index addressing in the byte loads.
|
||||
ma_add(HeapReg, ptr);
|
||||
|
||||
unsigned byteSize = access.byteSize();
|
||||
Scalar::Type type = access.type();
|
||||
bool isSigned = type == Scalar::Int8 || type == Scalar::Int16 || type == Scalar::Int32 ||
|
||||
type == Scalar::Int64;
|
||||
|
||||
Register low;
|
||||
if (out64 != Register64::Invalid())
|
||||
low = out64.low;
|
||||
else if (outAny.isFloat())
|
||||
low = tmp2;
|
||||
else
|
||||
low = outAny.gpr();
|
||||
|
||||
MOZ_ASSERT(low != tmp);
|
||||
MOZ_ASSERT(low != ptr);
|
||||
|
||||
asMasm().memoryBarrier(access.barrierBefore());
|
||||
|
||||
emitUnalignedLoad(isSigned, Min(byteSize, 4u), ptr, tmp, low);
|
||||
|
||||
if (out64 != Register64::Invalid()) {
|
||||
if (type == Scalar::Int64) {
|
||||
MOZ_ASSERT(byteSize == 8);
|
||||
emitUnalignedLoad(isSigned, 4, ptr, tmp, out64.high, /* offset */ 4);
|
||||
} else {
|
||||
MOZ_ASSERT(byteSize <= 4);
|
||||
// Propagate sign.
|
||||
if (isSigned)
|
||||
ma_asr(Imm32(31), out64.low, out64.high);
|
||||
else
|
||||
ma_mov(Imm32(0), out64.high);
|
||||
}
|
||||
} else if (outAny.isFloat()) {
|
||||
FloatRegister output = outAny.fpu();
|
||||
if (byteSize == 4) {
|
||||
MOZ_ASSERT(output.isSingle());
|
||||
ma_vxfer(low, output);
|
||||
} else {
|
||||
MOZ_ASSERT(byteSize == 8);
|
||||
MOZ_ASSERT(output.isDouble());
|
||||
Register high = tmp3;
|
||||
emitUnalignedLoad(/* signed */ false, 4, ptr, tmp, high, /* offset */ 4);
|
||||
ma_vxfer(low, high, output);
|
||||
}
|
||||
}
|
||||
|
||||
asMasm().memoryBarrier(access.barrierAfter());
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARM::wasmUnalignedStoreImpl(const wasm::MemoryAccessDesc& access, FloatRegister floatValue,
|
||||
Register64 val64, Register ptr, Register ptrScratch, Register tmp)
|
||||
{
|
||||
MOZ_ASSERT(ptr == ptrScratch);
|
||||
// They can't both be valid, but they can both be invalid.
|
||||
MOZ_ASSERT_IF(!floatValue.isInvalid(), val64 == Register64::Invalid());
|
||||
MOZ_ASSERT_IF(val64 != Register64::Invalid(), floatValue.isInvalid());
|
||||
|
||||
uint32_t offset = access.offset();
|
||||
MOZ_ASSERT(offset < wasm::OffsetGuardLimit);
|
||||
|
||||
unsigned byteSize = access.byteSize();
|
||||
|
||||
if (offset) {
|
||||
ScratchRegisterScope scratch(asMasm());
|
||||
ma_add(Imm32(offset), ptr, scratch);
|
||||
}
|
||||
|
||||
// Add HeapReg to ptr, so we can use base+index addressing in the byte loads.
|
||||
ma_add(HeapReg, ptr);
|
||||
|
||||
asMasm().memoryBarrier(access.barrierBefore());
|
||||
|
||||
if (val64 != Register64::Invalid()) {
|
||||
if (val64.low != tmp)
|
||||
ma_mov(val64.low, tmp);
|
||||
} else if (!floatValue.isInvalid()) {
|
||||
ma_vxfer(floatValue, tmp);
|
||||
}
|
||||
// Otherwise, tmp has the integer value to store.
|
||||
|
||||
emitUnalignedStore(Min(byteSize, 4u), ptr, tmp);
|
||||
|
||||
if (byteSize > 4) {
|
||||
if (val64 != Register64::Invalid()) {
|
||||
if (val64.high != tmp)
|
||||
ma_mov(val64.high, tmp);
|
||||
} else {
|
||||
MOZ_ASSERT(!floatValue.isInvalid());
|
||||
MOZ_ASSERT(floatValue.isDouble());
|
||||
ScratchRegisterScope scratch(asMasm());
|
||||
ma_vxfer(floatValue, scratch, tmp);
|
||||
}
|
||||
emitUnalignedStore(4, ptr, tmp, /* offset */ 4);
|
||||
}
|
||||
|
||||
asMasm().memoryBarrier(access.barrierAfter());
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARM::emitUnalignedLoad(bool isSigned, unsigned byteSize, Register ptr, Register tmp,
|
||||
Register dest, unsigned offset)
|
||||
|
@ -455,6 +455,27 @@ class MacroAssemblerARM : public Assembler
|
||||
MOZ_CRASH("Invalid data transfer addressing mode");
|
||||
}
|
||||
|
||||
// `outAny` is valid if and only if `out64` == Register64::Invalid().
|
||||
void wasmLoadImpl(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch,
|
||||
AnyRegister outAny, Register64 out64);
|
||||
|
||||
// `valAny` is valid if and only if `val64` == Register64::Invalid().
|
||||
void wasmStoreImpl(const wasm::MemoryAccessDesc& access, AnyRegister valAny, Register64 val64,
|
||||
Register ptr, Register ptrScratch);
|
||||
|
||||
protected:
|
||||
// `outAny` is valid if and only if `out64` == Register64::Invalid().
|
||||
void wasmUnalignedLoadImpl(const wasm::MemoryAccessDesc& access, Register ptr, Register ptrScratch,
|
||||
AnyRegister outAny, Register64 out64, Register tmp1, Register tmp2,
|
||||
Register tmp3);
|
||||
|
||||
// The value to be stored is in `floatValue` (if not invalid), `val64` (if not invalid),
|
||||
// or in `valOrTmp` (if `floatValue` and `val64` are both invalid). Note `valOrTmp` must
|
||||
// always be valid.
|
||||
void wasmUnalignedStoreImpl(const wasm::MemoryAccessDesc& access, FloatRegister floatValue,
|
||||
Register64 val64, Register ptr, Register ptrScratch, Register valOrTmp);
|
||||
|
||||
private:
|
||||
// Loads `byteSize` bytes, byte by byte, by reading from ptr[offset],
|
||||
// applying the indicated signedness (defined by isSigned).
|
||||
// - all three registers must be different.
|
||||
@ -469,7 +490,6 @@ class MacroAssemblerARM : public Assembler
|
||||
// - byteSize can be up to 4 bytes and no more (GPR are 32 bits on ARM).
|
||||
void emitUnalignedStore(unsigned byteSize, Register ptr, Register val, unsigned offset = 0);
|
||||
|
||||
private:
|
||||
// Implementation for transferMultipleByRuns so we can use different
|
||||
// iterators for forward/backward traversals. The sign argument should be 1
|
||||
// if we traverse forwards, -1 if we traverse backwards.
|
||||
|
@ -3418,16 +3418,16 @@ class BaseCompiler
|
||||
}
|
||||
|
||||
// This is the temp register passed as the last argument to load()
|
||||
MOZ_MUST_USE size_t loadStoreTemps(MemoryAccessDesc& access) {
|
||||
MOZ_MUST_USE size_t loadTemps(MemoryAccessDesc& access) {
|
||||
#if defined(JS_CODEGEN_ARM)
|
||||
if (access.isUnaligned()) {
|
||||
switch (access.type()) {
|
||||
case Scalar::Float32:
|
||||
return 1;
|
||||
case Scalar::Float64:
|
||||
return 2;
|
||||
case Scalar::Float64:
|
||||
return 3;
|
||||
default:
|
||||
break;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
@ -3438,8 +3438,8 @@ class BaseCompiler
|
||||
|
||||
// ptr and dest may be the same iff dest is I32.
|
||||
// This may destroy ptr even if ptr and dest are not the same.
|
||||
MOZ_MUST_USE bool load(MemoryAccessDesc& access, RegI32 ptr, bool omitBoundsCheck,
|
||||
AnyReg dest, RegI32 tmp1, RegI32 tmp2)
|
||||
MOZ_MUST_USE bool load(MemoryAccessDesc& access, RegI32 ptr, bool omitBoundsCheck, AnyReg dest,
|
||||
RegI32 tmp1, RegI32 tmp2, RegI32 tmp3)
|
||||
{
|
||||
checkOffset(&access, ptr);
|
||||
|
||||
@ -3481,40 +3481,26 @@ class BaseCompiler
|
||||
masm.mov(ScratchRegX86, dest.i32());
|
||||
}
|
||||
#elif defined(JS_CODEGEN_ARM)
|
||||
if (access.offset() != 0)
|
||||
masm.add32(Imm32(access.offset()), ptr);
|
||||
|
||||
bool isSigned = true;
|
||||
switch (access.type()) {
|
||||
case Scalar::Uint8:
|
||||
case Scalar::Uint16:
|
||||
case Scalar::Uint32: {
|
||||
isSigned = false;
|
||||
MOZ_FALLTHROUGH;
|
||||
case Scalar::Int8:
|
||||
case Scalar::Int16:
|
||||
case Scalar::Int32:
|
||||
Register rt = dest.tag == AnyReg::I64 ? dest.i64().low : dest.i32();
|
||||
loadI32(access, isSigned, ptr, rt);
|
||||
if (dest.tag == AnyReg::I64) {
|
||||
if (isSigned)
|
||||
masm.ma_asr(Imm32(31), rt, dest.i64().high);
|
||||
else
|
||||
masm.move32(Imm32(0), dest.i64().high);
|
||||
if (access.isUnaligned()) {
|
||||
switch (dest.tag) {
|
||||
case AnyReg::I64:
|
||||
masm.wasmUnalignedLoadI64(access, ptr, ptr, dest.i64(), tmp1);
|
||||
break;
|
||||
case AnyReg::F32:
|
||||
masm.wasmUnalignedLoadFP(access, ptr, ptr, dest.f32(), tmp1, tmp2, Register::Invalid());
|
||||
break;
|
||||
case AnyReg::F64:
|
||||
masm.wasmUnalignedLoadFP(access, ptr, ptr, dest.f64(), tmp1, tmp2, tmp3);
|
||||
break;
|
||||
default:
|
||||
masm.wasmUnalignedLoad(access, ptr, ptr, dest.i32(), tmp1);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case Scalar::Int64:
|
||||
loadI64(access, ptr, dest.i64());
|
||||
break;
|
||||
case Scalar::Float32:
|
||||
loadF32(access, ptr, dest.f32(), tmp1);
|
||||
break;
|
||||
case Scalar::Float64:
|
||||
loadF64(access, ptr, dest.f64(), tmp1, tmp2);
|
||||
break;
|
||||
default:
|
||||
MOZ_CRASH("Compiler bug: unexpected array type");
|
||||
} else {
|
||||
if (dest.tag == AnyReg::I64)
|
||||
masm.wasmLoadI64(access, ptr, ptr, dest.i64());
|
||||
else
|
||||
masm.wasmLoad(access, ptr, ptr, dest.any());
|
||||
}
|
||||
#else
|
||||
MOZ_CRASH("BaseCompiler platform hook: load");
|
||||
@ -3525,10 +3511,21 @@ class BaseCompiler
|
||||
return true;
|
||||
}
|
||||
|
||||
MOZ_MUST_USE size_t storeTemps(MemoryAccessDesc& access) {
|
||||
#if defined(JS_CODEGEN_ARM)
|
||||
if (access.isUnaligned()) {
|
||||
// See comment in store() about how this temp could be avoided for
|
||||
// unaligned i8/i16/i32 stores with some restructuring elsewhere.
|
||||
return 1;
|
||||
}
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
// ptr and src must not be the same register.
|
||||
// This may destroy ptr.
|
||||
MOZ_MUST_USE bool store(MemoryAccessDesc access, RegI32 ptr, bool omitBoundsCheck,
|
||||
AnyReg src, RegI32 tmp1, RegI32 tmp2)
|
||||
// This may destroy ptr but will not destroy src.
|
||||
MOZ_MUST_USE bool store(MemoryAccessDesc access, RegI32 ptr, bool omitBoundsCheck, AnyReg src,
|
||||
RegI32 tmp)
|
||||
{
|
||||
checkOffset(&access, ptr);
|
||||
|
||||
@ -3571,36 +3568,36 @@ class BaseCompiler
|
||||
masm.wasmStore(access, value, dstAddr);
|
||||
}
|
||||
#elif defined(JS_CODEGEN_ARM)
|
||||
if (access.offset() != 0)
|
||||
masm.add32(Imm32(access.offset()), ptr);
|
||||
|
||||
switch (access.type()) {
|
||||
case Scalar::Uint8:
|
||||
MOZ_FALLTHROUGH;
|
||||
case Scalar::Uint16:
|
||||
MOZ_FALLTHROUGH;
|
||||
case Scalar::Int8:
|
||||
MOZ_FALLTHROUGH;
|
||||
case Scalar::Int16:
|
||||
MOZ_FALLTHROUGH;
|
||||
case Scalar::Int32:
|
||||
MOZ_FALLTHROUGH;
|
||||
case Scalar::Uint32: {
|
||||
Register rt = src.tag == AnyReg::I64 ? src.i64().low : src.i32();
|
||||
storeI32(access, ptr, rt);
|
||||
break;
|
||||
}
|
||||
case Scalar::Int64:
|
||||
storeI64(access, ptr, src.i64());
|
||||
break;
|
||||
case Scalar::Float32:
|
||||
storeF32(access, ptr, src.f32(), tmp1);
|
||||
break;
|
||||
case Scalar::Float64:
|
||||
storeF64(access, ptr, src.f64(), tmp1, tmp2);
|
||||
break;
|
||||
default:
|
||||
MOZ_CRASH("Compiler bug: unexpected array type");
|
||||
if (access.isUnaligned()) {
|
||||
// TODO / OPTIMIZE (bug 1331264): We perform the copy on the i32
|
||||
// path (and allocate the temp for the copy) because we will destroy
|
||||
// the value in the temp. We could avoid the copy and the temp if
|
||||
// the caller would instead preserve src when it needs to return its
|
||||
// value as a result (for teeStore). If unaligned accesses are
|
||||
// common it will be worthwhile to make that change, but there's no
|
||||
// evidence yet that they will be common.
|
||||
switch (src.tag) {
|
||||
case AnyReg::I64:
|
||||
masm.wasmUnalignedStoreI64(access, src.i64(), ptr, ptr, tmp);
|
||||
break;
|
||||
case AnyReg::F32:
|
||||
masm.wasmUnalignedStoreFP(access, src.f32(), ptr, ptr, tmp);
|
||||
break;
|
||||
case AnyReg::F64:
|
||||
masm.wasmUnalignedStoreFP(access, src.f64(), ptr, ptr, tmp);
|
||||
break;
|
||||
default:
|
||||
moveI32(src.i32(), tmp);
|
||||
masm.wasmUnalignedStore(access, tmp, ptr, ptr);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
if (access.type() == Scalar::Int64)
|
||||
masm.wasmStoreI64(access, src.i64(), ptr, ptr);
|
||||
else if (src.tag == AnyReg::I64)
|
||||
masm.wasmStore(access, AnyRegister(src.i64().low), ptr, ptr);
|
||||
else
|
||||
masm.wasmStore(access, src.any(), ptr, ptr);
|
||||
}
|
||||
#else
|
||||
MOZ_CRASH("BaseCompiler platform hook: store");
|
||||
@ -3612,131 +3609,6 @@ class BaseCompiler
|
||||
return true;
|
||||
}
|
||||
|
||||
#ifdef JS_CODEGEN_ARM
|
||||
void
|
||||
loadI32(MemoryAccessDesc access, bool isSigned, RegI32 ptr, Register rt) {
|
||||
if (access.byteSize() > 1 && access.isUnaligned()) {
|
||||
masm.add32(HeapReg, ptr);
|
||||
SecondScratchRegisterScope scratch(*this);
|
||||
masm.emitUnalignedLoad(isSigned, access.byteSize(), ptr, scratch, rt, 0);
|
||||
} else {
|
||||
BufferOffset ld =
|
||||
masm.ma_dataTransferN(js::jit::IsLoad, BitSize(access.byteSize()*8),
|
||||
isSigned, HeapReg, ptr, rt, Offset, Assembler::Always);
|
||||
masm.append(access, ld.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
storeI32(MemoryAccessDesc access, RegI32 ptr, Register rt) {
|
||||
if (access.byteSize() > 1 && access.isUnaligned()) {
|
||||
masm.add32(HeapReg, ptr);
|
||||
masm.emitUnalignedStore(access.byteSize(), ptr, rt, 0);
|
||||
} else {
|
||||
BufferOffset st =
|
||||
masm.ma_dataTransferN(js::jit::IsStore, BitSize(access.byteSize()*8),
|
||||
IsSigned(false), ptr, HeapReg, rt, Offset,
|
||||
Assembler::Always);
|
||||
masm.append(access, st.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
loadI64(MemoryAccessDesc access, RegI32 ptr, RegI64 dest) {
|
||||
if (access.isUnaligned()) {
|
||||
masm.add32(HeapReg, ptr);
|
||||
SecondScratchRegisterScope scratch(*this);
|
||||
masm.emitUnalignedLoad(IsSigned(false), ByteSize(4), ptr, scratch, dest.low,
|
||||
0);
|
||||
masm.emitUnalignedLoad(IsSigned(false), ByteSize(4), ptr, scratch, dest.high,
|
||||
4);
|
||||
} else {
|
||||
BufferOffset ld;
|
||||
ld = masm.ma_dataTransferN(js::jit::IsLoad, BitSize(32), IsSigned(false), HeapReg,
|
||||
ptr, dest.low, Offset, Assembler::Always);
|
||||
masm.append(access, ld.getOffset(), masm.framePushed());
|
||||
masm.add32(Imm32(4), ptr);
|
||||
ld = masm.ma_dataTransferN(js::jit::IsLoad, BitSize(32), IsSigned(false), HeapReg,
|
||||
ptr, dest.high, Offset, Assembler::Always);
|
||||
masm.append(access, ld.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
storeI64(MemoryAccessDesc access, RegI32 ptr, RegI64 src) {
|
||||
if (access.isUnaligned()) {
|
||||
masm.add32(HeapReg, ptr);
|
||||
masm.emitUnalignedStore(ByteSize(4), ptr, src.low, 0);
|
||||
masm.emitUnalignedStore(ByteSize(4), ptr, src.high, 4);
|
||||
} else {
|
||||
BufferOffset st;
|
||||
st = masm.ma_dataTransferN(js::jit::IsStore, BitSize(32), IsSigned(false), HeapReg,
|
||||
ptr, src.low, Offset, Assembler::Always);
|
||||
masm.append(access, st.getOffset(), masm.framePushed());
|
||||
masm.add32(Imm32(4), ptr);
|
||||
st = masm.ma_dataTransferN(js::jit::IsStore, BitSize(32), IsSigned(false), HeapReg,
|
||||
ptr, src.high, Offset, Assembler::Always);
|
||||
masm.append(access, st.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
loadF32(MemoryAccessDesc access, RegI32 ptr, RegF32 dest, RegI32 tmp1) {
|
||||
masm.add32(HeapReg, ptr);
|
||||
if (access.isUnaligned()) {
|
||||
SecondScratchRegisterScope scratch(*this);
|
||||
masm.emitUnalignedLoad(IsSigned(false), ByteSize(4), ptr, scratch, tmp1, 0);
|
||||
masm.ma_vxfer(tmp1, dest);
|
||||
} else {
|
||||
BufferOffset ld = masm.ma_vldr(VFPAddr(ptr, VFPOffImm(0)), dest,
|
||||
Assembler::Always);
|
||||
masm.append(access, ld.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
storeF32(MemoryAccessDesc access, RegI32 ptr, RegF32 src, RegI32 tmp1) {
|
||||
masm.add32(HeapReg, ptr);
|
||||
if (access.isUnaligned()) {
|
||||
masm.ma_vxfer(src, tmp1);
|
||||
masm.emitUnalignedStore(ByteSize(4), ptr, tmp1, 0);
|
||||
} else {
|
||||
BufferOffset st =
|
||||
masm.ma_vstr(src, VFPAddr(ptr, VFPOffImm(0)), Assembler::Always);
|
||||
masm.append(access, st.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
loadF64(MemoryAccessDesc access, RegI32 ptr, RegF64 dest, RegI32 tmp1, RegI32 tmp2) {
|
||||
masm.add32(HeapReg, ptr);
|
||||
if (access.isUnaligned()) {
|
||||
SecondScratchRegisterScope scratch(*this);
|
||||
masm.emitUnalignedLoad(IsSigned(false), ByteSize(4), ptr, scratch, tmp1, 0);
|
||||
masm.emitUnalignedLoad(IsSigned(false), ByteSize(4), ptr, scratch, tmp2, 4);
|
||||
masm.ma_vxfer(tmp1, tmp2, dest);
|
||||
} else {
|
||||
BufferOffset ld = masm.ma_vldr(VFPAddr(ptr, VFPOffImm(0)), dest,
|
||||
Assembler::Always);
|
||||
masm.append(access, ld.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
storeF64(MemoryAccessDesc access, RegI32 ptr, RegF64 src, RegI32 tmp1, RegI32 tmp2) {
|
||||
masm.add32(HeapReg, ptr);
|
||||
if (access.isUnaligned()) {
|
||||
masm.ma_vxfer(src, tmp1, tmp2);
|
||||
masm.emitUnalignedStore(ByteSize(4), ptr, tmp1, 0);
|
||||
masm.emitUnalignedStore(ByteSize(4), ptr, tmp2, 4);
|
||||
} else {
|
||||
BufferOffset st =
|
||||
masm.ma_vstr(src, VFPAddr(ptr, VFPOffImm(0)), Assembler::Always);
|
||||
masm.append(access, st.getOffset(), masm.framePushed());
|
||||
}
|
||||
}
|
||||
#endif // JS_CODEGEN_ARM
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Generally speaking, ABOVE this point there should be no value
|
||||
@ -6668,9 +6540,10 @@ BaseCompiler::emitLoad(ValType type, Scalar::Type viewType)
|
||||
bool omitBoundsCheck = false;
|
||||
MemoryAccessDesc access(viewType, addr.align, addr.offset, trapIfNotAsmJS());
|
||||
|
||||
size_t temps = loadStoreTemps(access);
|
||||
size_t temps = loadTemps(access);
|
||||
RegI32 tmp1 = temps >= 1 ? needI32() : invalidI32();
|
||||
RegI32 tmp2 = temps >= 2 ? needI32() : invalidI32();
|
||||
RegI32 tmp3 = temps >= 3 ? needI32() : invalidI32();
|
||||
|
||||
switch (type) {
|
||||
case ValType::I32: {
|
||||
@ -6680,7 +6553,7 @@ BaseCompiler::emitLoad(ValType type, Scalar::Type viewType)
|
||||
#else
|
||||
RegI32 rv = rp;
|
||||
#endif
|
||||
if (!load(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2))
|
||||
if (!load(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2, tmp3))
|
||||
return false;
|
||||
pushI32(rv);
|
||||
if (rp != rv)
|
||||
@ -6698,7 +6571,7 @@ BaseCompiler::emitLoad(ValType type, Scalar::Type viewType)
|
||||
rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
rv = needI64();
|
||||
#endif
|
||||
if (!load(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2))
|
||||
if (!load(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2, tmp3))
|
||||
return false;
|
||||
pushI64(rv);
|
||||
freeI32(rp);
|
||||
@ -6707,7 +6580,7 @@ BaseCompiler::emitLoad(ValType type, Scalar::Type viewType)
|
||||
case ValType::F32: {
|
||||
RegI32 rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
RegF32 rv = needF32();
|
||||
if (!load(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2))
|
||||
if (!load(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2, tmp3))
|
||||
return false;
|
||||
pushF32(rv);
|
||||
freeI32(rp);
|
||||
@ -6716,7 +6589,7 @@ BaseCompiler::emitLoad(ValType type, Scalar::Type viewType)
|
||||
case ValType::F64: {
|
||||
RegI32 rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
RegF64 rv = needF64();
|
||||
if (!load(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2))
|
||||
if (!load(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2, tmp3))
|
||||
return false;
|
||||
pushF64(rv);
|
||||
freeI32(rp);
|
||||
@ -6731,6 +6604,8 @@ BaseCompiler::emitLoad(ValType type, Scalar::Type viewType)
|
||||
freeI32(tmp1);
|
||||
if (temps >= 2)
|
||||
freeI32(tmp2);
|
||||
if (temps >= 3)
|
||||
freeI32(tmp3);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -6746,15 +6621,14 @@ BaseCompiler::emitStoreOrTeeStore(ValType resultType, Scalar::Type viewType,
|
||||
bool omitBoundsCheck = false;
|
||||
MemoryAccessDesc access(viewType, addr.align, addr.offset, trapIfNotAsmJS());
|
||||
|
||||
size_t temps = loadStoreTemps(access);
|
||||
size_t temps = storeTemps(access);
|
||||
RegI32 tmp1 = temps >= 1 ? needI32() : invalidI32();
|
||||
RegI32 tmp2 = temps >= 2 ? needI32() : invalidI32();
|
||||
|
||||
switch (resultType) {
|
||||
case ValType::I32: {
|
||||
RegI32 rv = popI32();
|
||||
RegI32 rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2))
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rv), tmp1))
|
||||
return false;
|
||||
freeI32(rp);
|
||||
freeOrPushI32<isStore>(rv);
|
||||
@ -6763,7 +6637,7 @@ BaseCompiler::emitStoreOrTeeStore(ValType resultType, Scalar::Type viewType,
|
||||
case ValType::I64: {
|
||||
RegI64 rv = popI64();
|
||||
RegI32 rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2))
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rv), tmp1))
|
||||
return false;
|
||||
freeI32(rp);
|
||||
freeOrPushI64<isStore>(rv);
|
||||
@ -6772,7 +6646,7 @@ BaseCompiler::emitStoreOrTeeStore(ValType resultType, Scalar::Type viewType,
|
||||
case ValType::F32: {
|
||||
RegF32 rv = popF32();
|
||||
RegI32 rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2))
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rv), tmp1))
|
||||
return false;
|
||||
freeI32(rp);
|
||||
freeOrPushF32<isStore>(rv);
|
||||
@ -6781,7 +6655,7 @@ BaseCompiler::emitStoreOrTeeStore(ValType resultType, Scalar::Type viewType,
|
||||
case ValType::F64: {
|
||||
RegF64 rv = popF64();
|
||||
RegI32 rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rv), tmp1, tmp2))
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rv), tmp1))
|
||||
return false;
|
||||
freeI32(rp);
|
||||
freeOrPushF64<isStore>(rv);
|
||||
@ -6794,8 +6668,6 @@ BaseCompiler::emitStoreOrTeeStore(ValType resultType, Scalar::Type viewType,
|
||||
|
||||
if (temps >= 1)
|
||||
freeI32(tmp1);
|
||||
if (temps >= 2)
|
||||
freeI32(tmp2);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -6990,16 +6862,15 @@ BaseCompiler::emitTeeStoreWithCoercion(ValType resultType, Scalar::Type viewType
|
||||
bool omitBoundsCheck = false;
|
||||
MemoryAccessDesc access(viewType, addr.align, addr.offset, trapIfNotAsmJS());
|
||||
|
||||
size_t temps = loadStoreTemps(access);
|
||||
size_t temps = storeTemps(access);
|
||||
RegI32 tmp1 = temps >= 1 ? needI32() : invalidI32();
|
||||
RegI32 tmp2 = temps >= 2 ? needI32() : invalidI32();
|
||||
|
||||
if (resultType == ValType::F32 && viewType == Scalar::Float64) {
|
||||
RegF32 rv = popF32();
|
||||
RegF64 rw = needF64();
|
||||
masm.convertFloat32ToDouble(rv, rw);
|
||||
RegI32 rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rw), tmp1, tmp2))
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rw), tmp1))
|
||||
return false;
|
||||
pushF32(rv);
|
||||
freeI32(rp);
|
||||
@ -7010,7 +6881,7 @@ BaseCompiler::emitTeeStoreWithCoercion(ValType resultType, Scalar::Type viewType
|
||||
RegF32 rw = needF32();
|
||||
masm.convertDoubleToFloat32(rv, rw);
|
||||
RegI32 rp = popMemoryAccess(&access, &omitBoundsCheck);
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rw), tmp1, tmp2))
|
||||
if (!store(access, rp, omitBoundsCheck, AnyReg(rw), tmp1))
|
||||
return false;
|
||||
pushF64(rv);
|
||||
freeI32(rp);
|
||||
@ -7021,8 +6892,6 @@ BaseCompiler::emitTeeStoreWithCoercion(ValType resultType, Scalar::Type viewType
|
||||
|
||||
if (temps >= 1)
|
||||
freeI32(tmp1);
|
||||
if (temps >= 2)
|
||||
freeI32(tmp2);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
6
layout/generic/crashtests/742602.html
Normal file
6
layout/generic/crashtests/742602.html
Normal file
@ -0,0 +1,6 @@
|
||||
<!DOCTYPE html>
|
||||
<html style="direction: rtl; border-left: medium solid;">
|
||||
<body onload="document.documentElement.style.borderWidth = '109472098330px';">
|
||||
<div style="float: right;"><option style="display: -moz-box;">I</option>0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0</div>
|
||||
</body>
|
||||
</html>
|
@ -480,6 +480,7 @@ load 737313-1.html
|
||||
load 737313-2.html
|
||||
load 737313-3.html
|
||||
test-pref(font.size.inflation.emPerLine,15) load 740199-1.xhtml
|
||||
test-pref(font.size.inflation.emPerLine,15) load 742602.html
|
||||
load 747688.html
|
||||
load 750066.html
|
||||
load 757413.xhtml
|
||||
|
1
layout/mathml/crashtests/767251.xhtml
Normal file
1
layout/mathml/crashtests/767251.xhtml
Normal file
@ -0,0 +1 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" dir="rtl"><tr><span><math xmlns="http://www.w3.org/1998/Math/MathML"/><tr>n</tr></span></tr></html>
|
@ -58,6 +58,7 @@ load 654928-1.html
|
||||
load 655451-1.xhtml
|
||||
load 713606-1.html
|
||||
load 716349-1.html
|
||||
load 767251.xhtml
|
||||
load 848725-1.html
|
||||
load 848725-2.html
|
||||
load 947557-1.html
|
||||
|
@ -1,3 +1,4 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
@ -8,13 +9,13 @@ div {
|
||||
position: fixed;
|
||||
top: 50px;
|
||||
left: 50px;
|
||||
margin: 50;
|
||||
padding: 50;
|
||||
margin: 50px;
|
||||
padding: 50px;
|
||||
border: 50px solid red;
|
||||
transform-origin: 0 0;
|
||||
transform: translate(50px, 50px) scale(0.5);
|
||||
background-color: green;
|
||||
clip-path: polygon(0 0, 200px 0, 0 200px) content-box;*/
|
||||
clip-path: polygon(0 0, 200px 0, 0 200px) content-box;
|
||||
}
|
||||
</style>
|
||||
<title>clip-path with polygon() hit test</title>
|
||||
@ -38,4 +39,4 @@ is(a, document.elementFromPoint(299, 200), "a should be found");
|
||||
is(a, document.elementFromPoint(200, 299), "a should be found");
|
||||
is(a, document.elementFromPoint(250, 250), "a should be found");
|
||||
</script>
|
||||
</html>
|
||||
</html>
|
||||
|
1
layout/svg/crashtests/606914.xhtml
Normal file
1
layout/svg/crashtests/606914.xhtml
Normal file
@ -0,0 +1 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" style="display: table; position: absolute; left: 2305843009213694000pc; bottom: 2452284pc; padding: 9931442138140%; border-bottom-right-radius: 1152921504606847000pc;">X</html>
|
5
layout/svg/crashtests/743469.svg
Normal file
5
layout/svg/crashtests/743469.svg
Normal file
@ -0,0 +1,5 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" style="border-width: 51703084143745256mm; border-left-style: dashed; border-top-left-radius: 3%; border-top-style: dashed; border-right-style: solid; border-image-outset: 10;">
|
||||
<script>
|
||||
document.elementFromPoint(20, 20);
|
||||
</script>
|
||||
</svg>
|
After Width: | Height: | Size: 278 B |
@ -105,6 +105,7 @@ load 587336-1.html
|
||||
load 590291-1.svg
|
||||
load 601999-1.html
|
||||
load 605626-1.svg
|
||||
asserts(2) load 606914.xhtml # bug 606914
|
||||
asserts-if(stylo,2) load 610594-1.html # bug 1324669
|
||||
load 610954-1.html
|
||||
load 612662-1.svg
|
||||
@ -133,6 +134,7 @@ load 725918-1.svg
|
||||
load 732836-1.svg
|
||||
load 740627-1.svg
|
||||
load 740627-2.svg
|
||||
load 743469.svg
|
||||
load 757704-1.svg
|
||||
load 757718-1.svg
|
||||
load 757751-1.svg
|
||||
|
@ -21,6 +21,7 @@ import android.util.TypedValue;
|
||||
import org.mozilla.gecko.R;
|
||||
import org.mozilla.gecko.icons.IconRequest;
|
||||
import org.mozilla.gecko.icons.IconResponse;
|
||||
import org.mozilla.gecko.util.StringUtils;
|
||||
|
||||
/**
|
||||
* This loader will generate an icon in case no icon could be loaded. In order to do so this needs
|
||||
@ -43,14 +44,6 @@ public class IconGenerator implements IconLoader {
|
||||
0xFFea385e,
|
||||
};
|
||||
|
||||
// List of common prefixes of host names. Those prefixes will be striped before a prepresentative
|
||||
// character for an URL is determined.
|
||||
private static final String[] COMMON_PREFIXES = {
|
||||
"www.",
|
||||
"m.",
|
||||
"mobile.",
|
||||
};
|
||||
|
||||
private static final int TEXT_SIZE_DP = 12;
|
||||
@Override
|
||||
public IconResponse load(IconRequest request) {
|
||||
@ -156,12 +149,8 @@ public class IconGenerator implements IconLoader {
|
||||
return "?";
|
||||
}
|
||||
|
||||
// Strip common prefixes that we do not want to use to determine the representative character
|
||||
for (String prefix : COMMON_PREFIXES) {
|
||||
if (snippet.startsWith(prefix)) {
|
||||
snippet = snippet.substring(prefix.length());
|
||||
}
|
||||
}
|
||||
// Strip common prefixes that we do not want to use to determine the representative characterS
|
||||
snippet = StringUtils.stripCommonSubdomains(snippet);
|
||||
|
||||
return snippet;
|
||||
}
|
||||
|
@ -1149,4 +1149,4 @@ static const TransportSecurityPreload kPublicKeyPinningPreloadList[] = {
|
||||
|
||||
static const int32_t kUnknownId = -1;
|
||||
|
||||
static const PRTime kPreloadPKPinsExpirationTime = INT64_C(1492958449465000);
|
||||
static const PRTime kPreloadPKPinsExpirationTime = INT64_C(1493044853644000);
|
||||
|
@ -28,7 +28,6 @@
|
||||
2or3.tk: could not connect to host
|
||||
300651.ru: did not receive HSTS header
|
||||
302.nyc: could not connect to host
|
||||
314chan.org: could not connect to host
|
||||
33drugstore.com: did not receive HSTS header
|
||||
360ds.co.in: could not connect to host
|
||||
360gradus.com: did not receive HSTS header
|
||||
@ -61,9 +60,9 @@
|
||||
9point6.com: could not connect to host
|
||||
a-plus.space: could not connect to host
|
||||
a9c.co: could not connect to host
|
||||
aaeblog.com: did not receive HSTS header
|
||||
aaeblog.net: did not receive HSTS header
|
||||
aaeblog.org: did not receive HSTS header
|
||||
aaeblog.com: could not connect to host
|
||||
aaeblog.net: could not connect to host
|
||||
aaeblog.org: could not connect to host
|
||||
aapp.space: could not connect to host
|
||||
aaron-gustafson.com: did not receive HSTS header
|
||||
abearofsoap.com: could not connect to host
|
||||
@ -71,6 +70,7 @@ abecodes.net: could not connect to host
|
||||
abeestrada.com: did not receive HSTS header
|
||||
abilitylist.org: did not receive HSTS header
|
||||
abioniere.de: could not connect to host
|
||||
abnarnro.com: did not receive HSTS header
|
||||
about.ge: could not connect to host
|
||||
aboutmyip.info: did not receive HSTS header
|
||||
aboutmyproperty.ca: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
@ -96,14 +96,13 @@ adam-kostecki.de: did not receive HSTS header
|
||||
adamkostecki.de: did not receive HSTS header
|
||||
adams.net: max-age too low: 0
|
||||
adamwk.com: did not receive HSTS header
|
||||
adayinthelifeof.nl: could not connect to host
|
||||
adboos.com: did not receive HSTS header
|
||||
addaxpetroleum.com: could not connect to host
|
||||
addvocate.com: could not connect to host
|
||||
adelevie.com: could not connect to host
|
||||
aderal.io: could not connect to host
|
||||
adfa-1.com: did not receive HSTS header
|
||||
adhs-chaoten.net: did not receive HSTS header
|
||||
adjagu.org: could not connect to host
|
||||
admin.google.com: did not receive HSTS header (error ignored - included regardless)
|
||||
admsel.ec: could not connect to host
|
||||
adopteunsiteflash.com: did not receive HSTS header
|
||||
@ -191,7 +190,6 @@ amilx.org: could not connect to host
|
||||
amitube.com: could not connect to host
|
||||
amri.nl: could not connect to host
|
||||
anagra.ms: could not connect to host
|
||||
anakros.me: did not receive HSTS header
|
||||
analytic-s.ml: could not connect to host
|
||||
anarchistischegroepnijmegen.nl: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
anassiriphotography.com: could not connect to host
|
||||
@ -227,6 +225,7 @@ anonymousstatecollegelulzsec.com: could not connect to host
|
||||
anook.com: max-age too low: 0
|
||||
another.ch: could not connect to host
|
||||
ant.land: could not connect to host
|
||||
antarcti.co: did not receive HSTS header
|
||||
anthenor.co.uk: could not connect to host
|
||||
antimine.kr: could not connect to host
|
||||
antocom.com: did not receive HSTS header
|
||||
@ -249,6 +248,7 @@ apnakliyat.com: did not receive HSTS header
|
||||
aponkralsunucu.com: did not receive HSTS header
|
||||
app.lookout.com: could not connect to host
|
||||
app.manilla.com: could not connect to host
|
||||
appart.ninja: could not connect to host
|
||||
appengine.google.com: did not receive HSTS header (error ignored - included regardless)
|
||||
applez.xyz: could not connect to host
|
||||
applic8.com: did not receive HSTS header
|
||||
@ -280,6 +280,7 @@ as9178.net: could not connect to host
|
||||
asasuou.pw: could not connect to host
|
||||
asc16.com: could not connect to host
|
||||
asdpress.cn: could not connect to host
|
||||
ashleymedway.com: could not connect to host
|
||||
ashutoshmishra.org: did not receive HSTS header
|
||||
asianodor.com: could not connect to host
|
||||
askfit.cz: did not receive HSTS header
|
||||
@ -328,6 +329,7 @@ autokovrik-diskont.ru: did not receive HSTS header
|
||||
autotsum.com: could not connect to host
|
||||
autumnwindsagility.com: could not connect to host
|
||||
auverbox.ovh: could not connect to host
|
||||
auxiliumincrementum.co.uk: could not connect to host
|
||||
av.de: did not receive HSTS header
|
||||
avec-ou-sans-ordonnance.fr: could not connect to host
|
||||
avinet.com: max-age too low: 0
|
||||
@ -400,6 +402,7 @@ beneffy.com: did not receive HSTS header
|
||||
benk.press: could not connect to host
|
||||
benny003.de: did not receive HSTS header
|
||||
benzkosmetik.de: could not connect to host
|
||||
berger.work: could not connect to host
|
||||
bermytraq.bm: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
berrymark.be: max-age too low: 0
|
||||
besixdouze.world: could not connect to host
|
||||
@ -418,7 +421,6 @@ bf.am: max-age too low: 0
|
||||
bgcparkstad.nl: did not receive HSTS header
|
||||
bgmn.net: could not connect to host
|
||||
bi.search.yahoo.com: did not receive HSTS header
|
||||
bianinapiccanovias.com: could not connect to host
|
||||
bidon.ca: did not receive HSTS header
|
||||
bieberium.de: could not connect to host
|
||||
bienenblog.cc: could not connect to host
|
||||
@ -450,6 +452,7 @@ bithosting.io: did not receive HSTS header
|
||||
bitnet.io: did not receive HSTS header
|
||||
bitsafe.systems: could not connect to host
|
||||
bitvigor.com: could not connect to host
|
||||
biurokarier.edu.pl: could not connect to host
|
||||
bivsi.com: could not connect to host
|
||||
bizcms.com: did not receive HSTS header
|
||||
bizon.sk: did not receive HSTS header
|
||||
@ -461,7 +464,7 @@ bl4ckb0x.net: did not receive HSTS header
|
||||
bl4ckb0x.org: did not receive HSTS header
|
||||
black-armada.com.pl: could not connect to host
|
||||
black-armada.pl: could not connect to host
|
||||
blackburn.link: did not receive HSTS header
|
||||
blackburn.link: could not connect to host
|
||||
blackhelicopters.net: could not connect to host
|
||||
blacklane.com: did not receive HSTS header
|
||||
blackly.uk: could not connect to host
|
||||
@ -494,7 +497,6 @@ boensou.com: did not receive HSTS header
|
||||
bogosity.se: could not connect to host
|
||||
bohan.life: could not connect to host
|
||||
bonapp.restaurant: could not connect to host
|
||||
bondskampeerder.nl: could not connect to host
|
||||
bonfi.net: did not receive HSTS header
|
||||
bonigo.de: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
bonitabrazilian.co.nz: did not receive HSTS header
|
||||
@ -539,7 +541,6 @@ bsquared.org: could not connect to host
|
||||
btcdlc.com: could not connect to host
|
||||
buchheld.at: did not receive HSTS header
|
||||
bucket.tk: could not connect to host
|
||||
budger.nl: could not connect to host
|
||||
budgetthostels.nl: did not receive HSTS header
|
||||
budskap.eu: could not connect to host
|
||||
bugtrack.io: did not receive HSTS header
|
||||
@ -558,7 +559,7 @@ burrow.ovh: could not connect to host
|
||||
burtrum.me: could not connect to host
|
||||
burtrum.top: could not connect to host
|
||||
business.lookout.com: could not connect to host
|
||||
business.medbank.com.mt: max-age too low: 10011201
|
||||
business.medbank.com.mt: max-age too low: 9924796
|
||||
businesshosting.nl: did not receive HSTS header
|
||||
businessloanstoday.com: max-age too low: 0
|
||||
busold.ws: could not connect to host
|
||||
@ -590,6 +591,7 @@ cake.care: could not connect to host
|
||||
calendarr.com: did not receive HSTS header
|
||||
calgaryconstructionjobs.com: could not connect to host
|
||||
calix.com: max-age too low: 0
|
||||
call.me: did not receive HSTS header
|
||||
calltrackingreports.com: could not connect to host
|
||||
calvin.me: max-age too low: 2592000
|
||||
calvinallen.net: did not receive HSTS header
|
||||
@ -628,7 +630,6 @@ catarsisvr.com: did not receive HSTS header
|
||||
catcontent.cloud: could not connect to host
|
||||
catinmay.com: did not receive HSTS header
|
||||
catnapstudios.com: could not connect to host
|
||||
cattivo.nl: did not receive HSTS header
|
||||
caveclan.org: did not receive HSTS header
|
||||
cavedroid.xyz: could not connect to host
|
||||
cbhq.net: could not connect to host
|
||||
@ -756,6 +757,7 @@ code.google.com: did not receive HSTS header (error ignored - included regardles
|
||||
codeco.pw: could not connect to host
|
||||
codeforce.io: could not connect to host
|
||||
codepoet.de: could not connect to host
|
||||
codepult.com: could not connect to host
|
||||
codepx.com: did not receive HSTS header
|
||||
codiva.io: max-age too low: 2592000
|
||||
coffeeetc.co.uk: did not receive HSTS header
|
||||
@ -807,6 +809,7 @@ count.sh: could not connect to host
|
||||
couragewhispers.ca: did not receive HSTS header
|
||||
coursdeprogrammation.com: could not connect to host
|
||||
coursella.com: did not receive HSTS header
|
||||
courtlistener.com: could not connect to host
|
||||
covenantbank.net: could not connect to host
|
||||
coverduck.ru: could not connect to host
|
||||
cr.search.yahoo.com: did not receive HSTS header
|
||||
@ -839,7 +842,7 @@ cryptify.eu: could not connect to host
|
||||
cryptobin.org: could not connect to host
|
||||
cryptojar.io: did not receive HSTS header
|
||||
cryptoki.fr: max-age too low: 7776000
|
||||
cryptolab.pro: did not receive HSTS header
|
||||
cryptolab.tk: could not connect to host
|
||||
cryptopartyatx.org: could not connect to host
|
||||
cryptopush.com: did not receive HSTS header
|
||||
crysadm.com: max-age too low: 1
|
||||
@ -872,9 +875,12 @@ cydia-search.io: could not connect to host
|
||||
cyphertite.com: could not connect to host
|
||||
dad256.tk: could not connect to host
|
||||
dadtheimpaler.com: could not connect to host
|
||||
daemen.org: could not connect to host
|
||||
daemon.xin: could not connect to host
|
||||
dah5.com: did not receive HSTS header
|
||||
dailystormerpodcasts.com: did not receive HSTS header
|
||||
daimadi.com: could not connect to host
|
||||
daiweihu.com: could not connect to host
|
||||
dakrib.net: could not connect to host
|
||||
dalingk.co: could not connect to host
|
||||
dango.in: did not receive HSTS header
|
||||
@ -890,6 +896,7 @@ dario.im: could not connect to host
|
||||
dark-x.cf: could not connect to host
|
||||
darkengine.io: could not connect to host
|
||||
darkhole.cn: could not connect to host
|
||||
darkkeepers.dk: could not connect to host
|
||||
darknebula.space: could not connect to host
|
||||
darkpony.ru: could not connect to host
|
||||
darksideof.it: could not connect to host
|
||||
@ -945,6 +952,7 @@ delayrefunds.co.uk: could not connect to host
|
||||
deliverance.co.uk: could not connect to host
|
||||
deltaconcepts.de: did not receive HSTS header
|
||||
deltanet-production.de: max-age too low: 0
|
||||
demdis.org: could not connect to host
|
||||
demilitarized.ninja: could not connect to host
|
||||
democracychronicles.com: did not receive HSTS header
|
||||
demotops.com: did not receive HSTS header
|
||||
@ -994,7 +1002,6 @@ dislocated.de: did not receive HSTS header
|
||||
disowned.net: max-age too low: 0
|
||||
dissimulo.me: could not connect to host
|
||||
dittvertshus.no: could not connect to host
|
||||
dixmag.com: could not connect to host
|
||||
dizihocasi.com: did not receive HSTS header
|
||||
dizorg.net: could not connect to host
|
||||
dj4et.de: did not receive HSTS header
|
||||
@ -1063,6 +1070,7 @@ duria.de: max-age too low: 3600
|
||||
dutchrank.com: could not connect to host
|
||||
dutchrank.nl: could not connect to host
|
||||
dwhd.org: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
dworzak.ch: could not connect to host
|
||||
dxa.io: could not connect to host
|
||||
dycontrol.de: could not connect to host
|
||||
dylanscott.com.au: did not receive HSTS header
|
||||
@ -1074,6 +1082,7 @@ e-deca2.org: did not receive HSTS header
|
||||
e-sa.com: did not receive HSTS header
|
||||
earga.sm: could not connect to host
|
||||
earlybirdsnacks.com: could not connect to host
|
||||
earthrise16.com: could not connect to host
|
||||
easez.net: did not receive HSTS header
|
||||
easychiller.org: could not connect to host
|
||||
easyhaul.com: did not receive HSTS header
|
||||
@ -1150,7 +1159,6 @@ emmable.com: could not connect to host
|
||||
emnitech.com: could not connect to host
|
||||
empleosentorreon.mx: could not connect to host
|
||||
empleostampico.com: did not receive HSTS header
|
||||
emyr.net: could not connect to host
|
||||
enaah.de: could not connect to host
|
||||
enargia.jp: max-age too low: 0
|
||||
encode.space: did not receive HSTS header
|
||||
@ -1183,7 +1191,6 @@ equatetechnologies.com.au: max-age too low: 3600
|
||||
equilibre-yoga-jennifer-will.com: could not connect to host
|
||||
erawanarifnugroho.com: did not receive HSTS header
|
||||
eressea.xyz: could not connect to host
|
||||
ericyl.com: could not connect to host
|
||||
ernesto.at: could not connect to host
|
||||
eromixx.com: did not receive HSTS header
|
||||
erotalia.es: could not connect to host
|
||||
@ -1193,7 +1200,6 @@ errlytics.com: [Exception... "Component returned failure code: 0x80004005 (NS_ER
|
||||
errolz.com: could not connect to host
|
||||
errors.zenpayroll.com: could not connect to host
|
||||
ersindemirtas.com: did not receive HSTS header
|
||||
esclear.de: could not connect to host
|
||||
escotour.com: did not receive HSTS header
|
||||
esec.rs: did not receive HSTS header
|
||||
esln.org: did not receive HSTS header
|
||||
@ -1202,6 +1208,7 @@ esquonic.com: could not connect to host
|
||||
essexcosmeticdentists.co.uk: did not receive HSTS header
|
||||
essexghosthunters.co.uk: did not receive HSTS header
|
||||
estilosapeca.com: could not connect to host
|
||||
estrietoit.com: did not receive HSTS header
|
||||
etdonline.co.uk: could not connect to host
|
||||
eternitylove.us: could not connect to host
|
||||
ethanfaust.com: could not connect to host
|
||||
@ -1279,7 +1286,6 @@ fedux.com.ar: could not connect to host
|
||||
feezmodo.com: max-age too low: 0
|
||||
felisslovakia.sk: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
feliwyn.fr: did not receive HSTS header
|
||||
felixklein.at: could not connect to host
|
||||
feminists.co: could not connect to host
|
||||
fenteo.com: could not connect to host
|
||||
feragon.net: max-age too low: 84600
|
||||
@ -1289,11 +1295,11 @@ fexmen.com: could not connect to host
|
||||
ffmradio.de: did not receive HSTS header
|
||||
fhdhelp.de: could not connect to host
|
||||
fhdhilft.de: could not connect to host
|
||||
fierlafijn.net: could not connect to host
|
||||
fiftyshadesofluca.ml: could not connect to host
|
||||
fig.co: did not receive HSTS header
|
||||
fightr.co: could not connect to host
|
||||
fikt.space: could not connect to host
|
||||
filestar.io: did not receive HSTS header
|
||||
filmipop.com: max-age too low: 0
|
||||
finalgear.com: did not receive HSTS header
|
||||
financieringsportaal.nl: did not receive HSTS header
|
||||
@ -1307,6 +1313,7 @@ firebaseio.com: could not connect to host (error ignored - included regardless)
|
||||
firefall.rocks: could not connect to host
|
||||
firemail.io: could not connect to host
|
||||
fireorbit.de: did not receive HSTS header
|
||||
firstdogonthemoon.com.au: did not receive HSTS header
|
||||
firstforex.co.uk: did not receive HSTS header
|
||||
fish2.me: did not receive HSTS header
|
||||
fit4medien.de: did not receive HSTS header
|
||||
@ -1336,7 +1343,6 @@ flowersandclouds.com: could not connect to host
|
||||
flukethoughts.com: could not connect to host
|
||||
flushstudios.com: did not receive HSTS header
|
||||
flyaces.com: did not receive HSTS header
|
||||
flyserver.co.il: did not receive HSTS header
|
||||
fm83.nl: could not connect to host
|
||||
fndout.com: did not receive HSTS header
|
||||
fnvsecurity.com: could not connect to host
|
||||
@ -1369,6 +1375,7 @@ franta.biz: did not receive HSTS header
|
||||
franta.email: did not receive HSTS header
|
||||
franzt.de: could not connect to host
|
||||
frasys.io: max-age too low: 7776000
|
||||
free-your-pc.com: did not receive HSTS header
|
||||
freeflow.tv: could not connect to host
|
||||
freematthale.net: did not receive HSTS header
|
||||
freemedforms.com: did not receive HSTS header
|
||||
@ -1479,9 +1486,11 @@ gglks.com: did not receive HSTS header
|
||||
gh16.com.ar: could not connect to host
|
||||
gheorghesarcov.ga: could not connect to host
|
||||
gheorghesarcov.tk: could not connect to host
|
||||
ghostblog.info: could not connect to host
|
||||
giakki.eu: could not connect to host
|
||||
gietvloergarant.nl: did not receive HSTS header
|
||||
gigacloud.org: max-age too low: 0
|
||||
gigacog.com: could not connect to host
|
||||
gilly.berlin: did not receive HSTS header
|
||||
gingali.de: did not receive HSTS header
|
||||
gintenreiter-photography.com: did not receive HSTS header
|
||||
@ -1541,7 +1550,6 @@ gottcode.org: did not receive HSTS header
|
||||
gov.ax: could not connect to host
|
||||
govillemo.ca: did not receive HSTS header
|
||||
gparent.org: did not receive HSTS header
|
||||
gpfclan.de: could not connect to host
|
||||
gpsfix.cz: could not connect to host
|
||||
gpstuner.com: did not receive HSTS header
|
||||
gracesofgrief.com: max-age too low: 86400
|
||||
@ -1578,7 +1586,6 @@ guava.studio: did not receive HSTS header
|
||||
guilde-vindicta.fr: did not receive HSTS header
|
||||
gulenet.com: did not receive HSTS header
|
||||
gunnarhafdal.com: did not receive HSTS header
|
||||
gurochan.ch: could not connect to host
|
||||
gurusupe.com: could not connect to host
|
||||
gussi.is: could not connect to host
|
||||
gvt2.com: could not connect to host (error ignored - included regardless)
|
||||
@ -1623,8 +1630,8 @@ happygadget.me: could not connect to host
|
||||
happygastro.com: could not connect to host
|
||||
harabuhouse.com: did not receive HSTS header
|
||||
harbor-light.net: could not connect to host
|
||||
hardfalcon.net: could not connect to host
|
||||
hardline.xyz: could not connect to host
|
||||
haribosupermix.com: could not connect to host
|
||||
harmonycosmetic.com: max-age too low: 300
|
||||
harristony.com: could not connect to host
|
||||
hartmancpa.com: did not receive HSTS header
|
||||
@ -1655,8 +1662,8 @@ hdwallpapers.net: did not receive HSTS header
|
||||
healtious.com: did not receive HSTS header
|
||||
heart.ge: did not receive HSTS header
|
||||
heartlandrentals.com: did not receive HSTS header
|
||||
heartsucker.com: could not connect to host
|
||||
heftkaufen.de: did not receive HSTS header
|
||||
heijblok.com: could not connect to host
|
||||
helloworldhost.com: did not receive HSTS header
|
||||
helpadmin.net: could not connect to host
|
||||
helpium.de: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
@ -1668,7 +1675,6 @@ hepteract.us: did not receive HSTS header
|
||||
hermes-net.de: could not connect to host
|
||||
herpaderp.net: did not receive HSTS header
|
||||
herzbotschaft.de: did not receive HSTS header
|
||||
hethely.ch: could not connect to host
|
||||
hex2013.com: did not receive HSTS header
|
||||
hexid.me: could not connect to host
|
||||
hibilog.com: could not connect to host
|
||||
@ -1721,10 +1727,8 @@ housingstudents.org.uk: could not connect to host
|
||||
howbigismybuilding.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
howrandom.org: could not connect to host
|
||||
hr-intranet.com: did not receive HSTS header
|
||||
hsandbox.tech: did not receive HSTS header
|
||||
hsir.me: could not connect to host
|
||||
hsts.date: could not connect to host
|
||||
html5.org: could not connect to host
|
||||
http418.xyz: could not connect to host
|
||||
httpstatuscode418.xyz: could not connect to host
|
||||
hu.search.yahoo.com: did not receive HSTS header
|
||||
@ -1747,7 +1751,6 @@ iamusingtheinter.net: could not connect to host
|
||||
iamveto.com: could not connect to host
|
||||
iapws.com: did not receive HSTS header
|
||||
iban.is: could not connect to host
|
||||
icebat.dyndns.org: could not connect to host
|
||||
icewoman.net: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
ichnichtskaufmann.de: could not connect to host
|
||||
ichoosebtec.com: could not connect to host
|
||||
@ -1783,7 +1786,6 @@ ilbuongiorno.it: did not receive HSTS header
|
||||
ilhadocaranguejo.com.br: could not connect to host
|
||||
ilikerainbows.co: could not connect to host
|
||||
ilikerainbows.co.uk: could not connect to host
|
||||
illegalpornography.me: could not connect to host
|
||||
ilmconpm.de: did not receive HSTS header
|
||||
ilona.graphics: max-age too low: 3600
|
||||
iluvscotland.co.uk: did not receive HSTS header
|
||||
@ -1837,10 +1839,8 @@ intel.li: could not connect to host
|
||||
intelldynamics.com: could not connect to host
|
||||
interference.io: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
interlun.com: could not connect to host
|
||||
internect.co.za: did not receive HSTS header
|
||||
internetcasinos.de: could not connect to host
|
||||
internetcensus.org: could not connect to host
|
||||
internetpro.me: could not connect to host
|
||||
interserved.com: did not receive HSTS header
|
||||
intex.es: max-age too low: 0
|
||||
intim-uslugi-kazan.net: could not connect to host
|
||||
@ -1860,7 +1860,6 @@ ip6.im: did not receive HSTS header
|
||||
ipmimagazine.com: did not receive HSTS header
|
||||
iptel.by: max-age too low: 0
|
||||
iptel.ro: could not connect to host
|
||||
ipv6-adresse.dk: could not connect to host
|
||||
ipv6cloud.club: could not connect to host
|
||||
iqcn.co: did not receive HSTS header
|
||||
iqualtech.com: did not receive HSTS header
|
||||
@ -1885,7 +1884,6 @@ itos.asia: did not receive HSTS header
|
||||
itos.pl: did not receive HSTS header
|
||||
itsadog.co.uk: did not receive HSTS header
|
||||
itsamurai.ru: max-age too low: 2592000
|
||||
itsatrap.nl: could not connect to host
|
||||
itsecurityassurance.pw: did not receive HSTS header
|
||||
itsg-faq.de: could not connect to host
|
||||
itshost.ru: could not connect to host
|
||||
@ -1894,11 +1892,12 @@ ivi.es: max-age too low: 0
|
||||
ivk.website: could not connect to host
|
||||
ivo.co.za: could not connect to host
|
||||
iwannarefill.com: could not connect to host
|
||||
iwizerunek.pl: could not connect to host
|
||||
izdiwho.com: could not connect to host
|
||||
izolight.ch: could not connect to host
|
||||
izoox.com: did not receive HSTS header
|
||||
izzzorgconcerten.nl: could not connect to host
|
||||
ja-publications.com: could not connect to host
|
||||
ja-publications.com: did not receive HSTS header
|
||||
jabbari.io: did not receive HSTS header
|
||||
jackalworks.com: could not connect to host
|
||||
jacobhaug.com: could not connect to host
|
||||
@ -1907,7 +1906,6 @@ jahliveradio.com: could not connect to host
|
||||
jakenbake.com: did not receive HSTS header
|
||||
jakubtopic.cz: could not connect to host
|
||||
james.je: could not connect to host
|
||||
jamesandpame.la: could not connect to host
|
||||
jamesbradach.com: did not receive HSTS header
|
||||
jamesburton.london: could not connect to host
|
||||
jamesbywater.me: could not connect to host
|
||||
@ -1937,7 +1935,6 @@ jasonroe.me: did not receive HSTS header
|
||||
jasonsansone.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
jastoria.pl: could not connect to host
|
||||
jayblock.com: did not receive HSTS header
|
||||
jayharris.ca: could not connect to host
|
||||
jayschulman.com: could not connect to host
|
||||
jayscoaching.com: could not connect to host
|
||||
jayshao.com: did not receive HSTS header
|
||||
@ -2009,6 +2006,7 @@ junaos.xyz: did not receive HSTS header
|
||||
junge-selbsthilfe.info: could not connect to host
|
||||
junqtion.com: could not connect to host
|
||||
jupp0r.de: did not receive HSTS header
|
||||
jurriaan.ninja: could not connect to host
|
||||
justlikethat.hosting: did not receive HSTS header
|
||||
justnaw.co.uk: could not connect to host
|
||||
justudin.com: did not receive HSTS header
|
||||
@ -2020,6 +2018,7 @@ jznet.org: max-age too low: 86400
|
||||
k-dev.de: could not connect to host
|
||||
ka-clan.com: could not connect to host
|
||||
kabuabc.com: did not receive HSTS header
|
||||
kabus.org: could not connect to host
|
||||
kadioglumakina.com.tr: did not receive HSTS header
|
||||
kaela.design: did not receive HSTS header
|
||||
kahopoon.net: could not connect to host
|
||||
@ -2052,8 +2051,6 @@ kerangalam.com: could not connect to host
|
||||
kerksanders.nl: did not receive HSTS header
|
||||
kermadec.net: could not connect to host
|
||||
kernl.us: did not receive HSTS header
|
||||
kesteren.com: could not connect to host
|
||||
kesteren.org: could not connect to host
|
||||
keymaster.lookout.com: did not receive HSTS header
|
||||
kgxtech.com: max-age too low: 2592000
|
||||
ki-on.net: did not receive HSTS header
|
||||
@ -2083,8 +2080,8 @@ kisun.co.jp: could not connect to host
|
||||
kitakemon.com: could not connect to host
|
||||
kitchenpunx.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
kitk.at: could not connect to host
|
||||
kitsostech.com: could not connect to host
|
||||
kitsta.com: could not connect to host
|
||||
kittmedia.com: did not receive HSTS header
|
||||
kiwiirc.com: max-age too low: 5256000
|
||||
kizil.net: could not connect to host
|
||||
kjaermaxi.me: did not receive HSTS header
|
||||
@ -2102,6 +2099,7 @@ knowledgesnap.com: did not receive HSTS header
|
||||
kodokushi.fr: could not connect to host
|
||||
koen.io: did not receive HSTS header
|
||||
koenrouwhorst.nl: did not receive HSTS header
|
||||
kojipkgs.fedoraproject.org: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
kollabria.com: max-age too low: 0
|
||||
komikito.com: could not connect to host
|
||||
kompetenzwerft.de: did not receive HSTS header
|
||||
@ -2118,7 +2116,6 @@ kotovstyle.ru: could not connect to host
|
||||
kr.search.yahoo.com: did not receive HSTS header
|
||||
kredite.sale: could not connect to host
|
||||
kriegt.es: could not connect to host
|
||||
kristikala.nl: could not connect to host
|
||||
krmela.com: could not connect to host
|
||||
kroetenfuchs.de: could not connect to host
|
||||
kropkait.pl: could not connect to host
|
||||
@ -2144,6 +2141,8 @@ kylinj.com: could not connect to host
|
||||
kyochon.fr: could not connect to host
|
||||
kz.search.yahoo.com: did not receive HSTS header
|
||||
kzjnet.com: could not connect to host
|
||||
kzsdabas.hu: could not connect to host
|
||||
l2guru.ru: could not connect to host
|
||||
labaia.info: could not connect to host
|
||||
labina.com.tr: did not receive HSTS header
|
||||
laboiteapc.fr: did not receive HSTS header
|
||||
@ -2162,6 +2161,7 @@ lampl.info: did not receive HSTS header
|
||||
landscape.canonical.com: max-age too low: 2592000
|
||||
langenbach.rocks: could not connect to host
|
||||
langhun.me: did not receive HSTS header
|
||||
lantian.pub: could not connect to host
|
||||
laozhu.me: did not receive HSTS header
|
||||
laserfuchs.de: did not receive HSTS header
|
||||
lashstuff.com: did not receive HSTS header
|
||||
@ -2175,6 +2175,7 @@ lbrt.xyz: could not connect to host
|
||||
ldarby.me.uk: could not connect to host
|
||||
leadership9.com: could not connect to host
|
||||
leardev.de: did not receive HSTS header
|
||||
learnedovo.com: could not connect to host
|
||||
learnfrenchfluently.com: did not receive HSTS header
|
||||
learningorder.com: could not connect to host
|
||||
lechiennoir.net: did not receive HSTS header
|
||||
@ -2228,6 +2229,7 @@ lifeskillsdirect.com: did not receive HSTS header
|
||||
lifestylehunter.co.uk: did not receive HSTS header
|
||||
lifetimemoneymachine.com: did not receive HSTS header
|
||||
lifi.digital: did not receive HSTS header
|
||||
lifi.is: could not connect to host
|
||||
lightarmory.com: could not connect to host
|
||||
lightpaste.com: could not connect to host
|
||||
lightworx.io: did not receive HSTS header
|
||||
@ -2236,14 +2238,13 @@ lilpwny.com: could not connect to host
|
||||
limalama.eu: max-age too low: 1
|
||||
limeyeti.com: could not connect to host
|
||||
limiteddata.co.uk: could not connect to host
|
||||
limpid.nl: could not connect to host
|
||||
limpido.it: could not connect to host
|
||||
lincolnwayflorist.com: could not connect to host
|
||||
lindberg.io: did not receive HSTS header
|
||||
lingotaxi.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
lingros-test.tk: could not connect to host
|
||||
linguaquote.com: did not receive HSTS header
|
||||
link2serve.com: could not connect to host
|
||||
link2serve.com: did not receive HSTS header
|
||||
linmi.cc: did not receive HSTS header
|
||||
linorman1997.me: could not connect to host
|
||||
lintmx.com: could not connect to host
|
||||
@ -2312,6 +2313,7 @@ lumi.do: did not receive HSTS header
|
||||
luody.info: could not connect to host
|
||||
luoe.ml: could not connect to host
|
||||
luoxiao.im: could not connect to host
|
||||
luripump.se: could not connect to host
|
||||
lusis.fr: did not receive HSTS header
|
||||
lusis.net: did not receive HSTS header
|
||||
lustrumxi.nl: did not receive HSTS header
|
||||
@ -2326,11 +2328,13 @@ m2tc.fr: could not connect to host
|
||||
m3-gmbh.de: did not receive HSTS header
|
||||
m82labs.com: could not connect to host
|
||||
maarten.nyc: did not receive HSTS header
|
||||
maartenterpstra.xyz: could not connect to host
|
||||
maartenvandekamp.nl: did not receive HSTS header
|
||||
macchaberrycream.com: could not connect to host
|
||||
macchedil.com: did not receive HSTS header
|
||||
macgeneral.de: did not receive HSTS header
|
||||
machon.biz: could not connect to host
|
||||
macker.io: could not connect to host
|
||||
madars.org: did not receive HSTS header
|
||||
maddin.ga: could not connect to host
|
||||
madebymagnitude.com: did not receive HSTS header
|
||||
@ -2363,6 +2367,7 @@ marcuskoh.com: could not connect to host
|
||||
mariannematthew.com: could not connect to host
|
||||
marie-curie.fr: could not connect to host
|
||||
marie-elisabeth.dk: did not receive HSTS header
|
||||
marie.club: could not connect to host
|
||||
mariehane.com: could not connect to host
|
||||
markaconnor.com: could not connect to host
|
||||
markayapilandirma.com: did not receive HSTS header
|
||||
@ -2430,7 +2435,6 @@ meghudson.com: could not connect to host
|
||||
mein-gesundheitsmanager.com: did not receive HSTS header
|
||||
meincenter-meinemeinung.de: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
meinebo.it: could not connect to host
|
||||
melcher.it: did not receive HSTS header
|
||||
melted.pw: could not connect to host
|
||||
members.mayfirst.org: did not receive HSTS header
|
||||
mencap.org.uk: max-age too low: 0
|
||||
@ -2443,7 +2447,6 @@ merson.me: could not connect to host
|
||||
meshok.ru: did not receive HSTS header
|
||||
mesmoque.com: did not receive HSTS header
|
||||
metagrader.com: could not connect to host
|
||||
metasyntactic.xyz: could not connect to host
|
||||
metebalci.com: could not connect to host
|
||||
meteosky.net: could not connect to host
|
||||
metin2blog.de: did not receive HSTS header
|
||||
@ -2468,6 +2471,7 @@ micro-rain-systems.com: did not receive HSTS header
|
||||
microme.ga: could not connect to host
|
||||
micropple.net: could not connect to host
|
||||
midwestwomenworkers.org: did not receive HSTS header
|
||||
miegl.cz: could not connect to host
|
||||
mightydicks.io: could not connect to host
|
||||
mightydicks.tech: could not connect to host
|
||||
mightysounds.cz: max-age too low: 0
|
||||
@ -2612,7 +2616,6 @@ mypagella.it: could not connect to host
|
||||
mypension.ca: could not connect to host
|
||||
myraytech.net: did not receive HSTS header
|
||||
mysecretrewards.com: did not receive HSTS header
|
||||
myshirtsize.com: could not connect to host
|
||||
mystery-science-theater-3000.de: did not receive HSTS header
|
||||
mystudy.me: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
myvirtualserver.com: max-age too low: 2592000
|
||||
@ -2681,6 +2684,7 @@ neutralox.com: max-age too low: 3600
|
||||
never-afk.de: did not receive HSTS header
|
||||
neveta.com: could not connect to host
|
||||
newcitygas.ca: max-age too low: 0
|
||||
newkaliningrad.ru: did not receive HSTS header
|
||||
newlooknow.com: did not receive HSTS header
|
||||
newtonwarp.com: could not connect to host
|
||||
nextcloud.org: could not connect to host
|
||||
@ -2738,7 +2742,7 @@ nosecretshop.com: could not connect to host
|
||||
nossasenhoradaconceicao.com.br: could not connect to host
|
||||
notadd.com: did not receive HSTS header
|
||||
notarvysocina.cz: could not connect to host
|
||||
nottheonion.net: did not receive HSTS header
|
||||
nottheonion.net: could not connect to host
|
||||
nouvelle-vague-saint-cast.fr: did not receive HSTS header
|
||||
novacoast.com: did not receive HSTS header
|
||||
novatrucking.de: could not connect to host
|
||||
@ -2776,6 +2780,7 @@ nwa.xyz: could not connect to host
|
||||
nwgh.org: max-age too low: 86400
|
||||
nwork.media: could not connect to host
|
||||
nyantec.com: did not receive HSTS header
|
||||
nymphetomania.net: did not receive HSTS header
|
||||
nysepho.pw: could not connect to host
|
||||
nystart.no: did not receive HSTS header
|
||||
nz.search.yahoo.com: max-age too low: 172800
|
||||
@ -2784,7 +2789,6 @@ o0o.one: did not receive HSTS header
|
||||
oasis.mobi: did not receive HSTS header
|
||||
oasisim.net: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
obdolbacca.ru: could not connect to host
|
||||
obfuscate.xyz: could not connect to host
|
||||
obsydian.org: could not connect to host
|
||||
occasion-impro.com: could not connect to host
|
||||
occentus.net: did not receive HSTS header
|
||||
@ -2838,7 +2842,6 @@ ookjesprookje.nl: could not connect to host
|
||||
ooonja.de: could not connect to host
|
||||
oopsmycase.com: could not connect to host
|
||||
oost.io: could not connect to host
|
||||
open-coding.org: could not connect to host
|
||||
open-mx.de: could not connect to host
|
||||
open-to-repair.fr: did not receive HSTS header
|
||||
opendesk.cc: did not receive HSTS header
|
||||
@ -2867,7 +2870,6 @@ orionfcu.com: did not receive HSTS header
|
||||
orleika.ml: could not connect to host
|
||||
osacrypt.studio: could not connect to host
|
||||
osaiyuwu.com: could not connect to host
|
||||
oscarvk.ch: could not connect to host
|
||||
oscsdp.cz: could not connect to host
|
||||
oslfoundation.org: could not connect to host
|
||||
osp.cx: could not connect to host
|
||||
@ -2882,6 +2884,7 @@ otherstuff.nl: [Exception... "Component returned failure code: 0x80004005 (NS_ER
|
||||
otichi.com: did not receive HSTS header
|
||||
ottospora.nl: could not connect to host
|
||||
ourbank.com: did not receive HSTS header
|
||||
ourevents.net: could not connect to host
|
||||
outdoorproducts.com: did not receive HSTS header
|
||||
outetc.com: could not connect to host
|
||||
outreachbuddy.com: could not connect to host
|
||||
@ -2965,6 +2968,7 @@ pdf.yt: could not connect to host
|
||||
peissen.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
pekkapikkarainen.fi: did not receive HSTS header
|
||||
pekkarik.ru: could not connect to host
|
||||
peliculasaudiolatinoonline.com: could not connect to host
|
||||
penguinclientsystem.com: did not receive HSTS header
|
||||
pensacolawinterfest.org: could not connect to host
|
||||
pepchid.com: did not receive HSTS header
|
||||
@ -3008,7 +3012,7 @@ pinesandneedles.com: did not receive HSTS header
|
||||
pippen.io: could not connect to host
|
||||
piratedb.com: could not connect to host
|
||||
piratedot.com: could not connect to host
|
||||
piratelist.online: could not connect to host
|
||||
piratelist.online: did not receive HSTS header
|
||||
piratenlogin.de: could not connect to host
|
||||
pirateproxy.sx: could not connect to host
|
||||
pirati.cz: max-age too low: 604800
|
||||
@ -3060,18 +3064,20 @@ poolsandstuff.com: did not receive HSTS header
|
||||
poon.tech: could not connect to host
|
||||
porno-gif.ru: did not receive HSTS header
|
||||
portalplatform.net: did not receive HSTS header
|
||||
portalzine.de: did not receive HSTS header
|
||||
poshpak.com: max-age too low: 86400
|
||||
postcodewise.co.uk: did not receive HSTS header
|
||||
postscheduler.org: could not connect to host
|
||||
posylka.de: did not receive HSTS header
|
||||
poussinooz.fr: could not connect to host
|
||||
povitria.net: could not connect to host
|
||||
power99press.com: did not receive HSTS header
|
||||
power99press.com: could not connect to host
|
||||
powerplannerapp.com: did not receive HSTS header
|
||||
powerxequality.com: could not connect to host
|
||||
ppr-truby.ru: could not connect to host
|
||||
ppy3.com: did not receive HSTS header
|
||||
pr.search.yahoo.com: did not receive HSTS header
|
||||
praguepsychology.cz: did not receive HSTS header
|
||||
prattpokemon.com: could not connect to host
|
||||
prefontaine.name: could not connect to host
|
||||
prego-shop.de: did not receive HSTS header
|
||||
@ -3092,7 +3098,6 @@ privacyrup.net: could not connect to host
|
||||
prnt.li: did not receive HSTS header
|
||||
pro-zone.com: could not connect to host
|
||||
prodpad.com: did not receive HSTS header
|
||||
productdesignsoftware.com.au: could not connect to host
|
||||
professionalboundaries.com: did not receive HSTS header
|
||||
profi-durchgangsmelder.de: did not receive HSTS header
|
||||
profundr.com: could not connect to host
|
||||
@ -3112,7 +3117,7 @@ proximato.com: could not connect to host
|
||||
proxybay.al: could not connect to host
|
||||
proxybay.club: could not connect to host
|
||||
proxybay.info: did not receive HSTS header
|
||||
prxio.site: could not connect to host
|
||||
prxio.site: did not receive HSTS header
|
||||
prytkov.com: did not receive HSTS header
|
||||
psw.academy: did not receive HSTS header
|
||||
psw.consulting: did not receive HSTS header
|
||||
@ -3152,7 +3157,6 @@ queercoders.com: did not receive HSTS header
|
||||
questsandrewards.com: could not connect to host
|
||||
quotehex.com: could not connect to host
|
||||
quranserver.net: could not connect to host
|
||||
quuz.org: could not connect to host
|
||||
qvi.st: did not receive HSTS header
|
||||
qwaser.fr: could not connect to host
|
||||
qwilink.me: did not receive HSTS header
|
||||
@ -3167,6 +3171,7 @@ rainbowbarracuda.com: could not connect to host
|
||||
ramonj.nl: could not connect to host
|
||||
randomcage.com: did not receive HSTS header
|
||||
randomcloud.net: could not connect to host
|
||||
randomprecision.co.uk: did not receive HSTS header
|
||||
rankthespot.com: could not connect to host
|
||||
rannseier.org: did not receive HSTS header
|
||||
rapidresearch.me: could not connect to host
|
||||
@ -3246,6 +3251,7 @@ richsiciliano.com: could not connect to host
|
||||
rid-wan.com: could not connect to host
|
||||
rideworks.com: did not receive HSTS header
|
||||
riesenweber.id.au: did not receive HSTS header
|
||||
right-to-love.name: did not receive HSTS header
|
||||
right2.org: could not connect to host
|
||||
righttoknow.ie: did not receive HSTS header
|
||||
rijndael.xyz: could not connect to host
|
||||
@ -3273,6 +3279,7 @@ roddis.net: did not receive HSTS header
|
||||
rodney.id.au: did not receive HSTS header
|
||||
rodosto.com: did not receive HSTS header
|
||||
roeper.party: could not connect to host
|
||||
roessner-network-solutions.com: could not connect to host
|
||||
rolemaster.net: could not connect to host
|
||||
romans-place.me.uk: did not receive HSTS header
|
||||
ronvandordt.info: could not connect to host
|
||||
@ -3339,7 +3346,7 @@ sandviks.com: did not receive HSTS header
|
||||
sansemea.com: could not connect to host
|
||||
sansonehowell.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
sarah-beckett-harpist.com: did not receive HSTS header
|
||||
sarisonproductions.com: did not receive HSTS header
|
||||
sarisonproductions.com: could not connect to host
|
||||
saruwebshop.co.za: did not receive HSTS header
|
||||
satmep.com: did not receive HSTS header
|
||||
satriyowibowo.my.id: did not receive HSTS header
|
||||
@ -3461,6 +3468,7 @@ shiftins.com: did not receive HSTS header
|
||||
shiinko.com: could not connect to host
|
||||
shinebijoux.com.br: could not connect to host
|
||||
shinju.moe: could not connect to host
|
||||
shiona.xyz: did not receive HSTS header
|
||||
shocksrv.com: did not receive HSTS header
|
||||
shooshosha.com: did not receive HSTS header
|
||||
shopontarget.com: did not receive HSTS header
|
||||
@ -3468,7 +3476,6 @@ shoprose.ru: could not connect to host
|
||||
shops.neonisi.com: could not connect to host
|
||||
shortr.li: could not connect to host
|
||||
showkeeper.tv: did not receive HSTS header
|
||||
shtorku.com: could not connect to host
|
||||
shukatsu-note.com: could not connect to host
|
||||
shv25.se: could not connect to host
|
||||
shwongacc.com: could not connect to host
|
||||
@ -3488,7 +3495,6 @@ simbast.com: could not connect to host
|
||||
simod.org: could not connect to host
|
||||
simon.butcher.name: max-age too low: 2629743
|
||||
simongong.net: did not receive HSTS header
|
||||
simonhirscher.de: could not connect to host
|
||||
simpleai.net: max-age too low: 600
|
||||
simplefraud.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
simplelearner.com: could not connect to host
|
||||
@ -3511,7 +3517,7 @@ skyasker.cn: could not connect to host
|
||||
skyflix.me: did not receive HSTS header
|
||||
skyoy.com: could not connect to host
|
||||
slash-dev.de: did not receive HSTS header
|
||||
slashem.me: could not connect to host
|
||||
slashem.me: did not receive HSTS header
|
||||
slattery.co: could not connect to host
|
||||
sleep10.com: could not connect to host
|
||||
slicketl.com: did not receive HSTS header
|
||||
@ -3519,6 +3525,7 @@ slightfuture.click: could not connect to host
|
||||
slix.io: could not connect to host
|
||||
slope.haus: could not connect to host
|
||||
slovakiana.sk: did not receive HSTS header
|
||||
slowfood.es: could not connect to host
|
||||
sluitkampzeist.nl: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
slycurity.de: did not receive HSTS header
|
||||
smart-mirror.de: did not receive HSTS header
|
||||
@ -3556,7 +3563,7 @@ socialhams.net: did not receive HSTS header
|
||||
socialhead.io: could not connect to host
|
||||
socialspirit.com.br: did not receive HSTS header
|
||||
sockeye.cc: could not connect to host
|
||||
socomponents.co.uk: could not connect to host
|
||||
socomponents.co.uk: did not receive HSTS header
|
||||
sogeek.me: did not receive HSTS header
|
||||
sol-3.de: did not receive HSTS header
|
||||
solidfuelappliancespares.co.uk: did not receive HSTS header
|
||||
@ -3567,7 +3574,6 @@ someshit.xyz: could not connect to host
|
||||
somethingnew.xyz: did not receive HSTS header
|
||||
sonic.sk: max-age too low: 0
|
||||
sonicrainboom.rocks: did not receive HSTS header
|
||||
sortaweird.net: could not connect to host
|
||||
sotiran.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
sotor.de: did not receive HSTS header
|
||||
soulboy.io: did not receive HSTS header
|
||||
@ -3629,10 +3635,10 @@ sss3s.com: did not receive HSTS header
|
||||
stabletoken.com: could not connect to host
|
||||
stadjerspasonline.nl: could not connect to host
|
||||
stahl.xyz: could not connect to host
|
||||
standardssuck.org: could not connect to host
|
||||
standingmist.com: could not connect to host
|
||||
stargatepartners.com: did not receive HSTS header
|
||||
starmusic.ga: did not receive HSTS header
|
||||
starwatches.eu: could not connect to host
|
||||
stat.ink: did not receive HSTS header
|
||||
stateofexception.io: could not connect to host
|
||||
static.or.at: did not receive HSTS header
|
||||
@ -3667,6 +3673,7 @@ stqry.com: did not receive HSTS header
|
||||
str0.at: did not receive HSTS header
|
||||
strasweb.fr: did not receive HSTS header
|
||||
streamingmagazin.de: could not connect to host
|
||||
streampanel.net: did not receive HSTS header
|
||||
streams.dyndns.org: could not connect to host
|
||||
strictlysudo.com: could not connect to host
|
||||
stroeercrm.de: could not connect to host
|
||||
@ -3702,7 +3709,6 @@ suos.io: could not connect to host
|
||||
superbabysitting.ch: could not connect to host
|
||||
superbike.tw: could not connect to host
|
||||
supereight.net: did not receive HSTS header
|
||||
superhome.com.au: did not receive HSTS header
|
||||
superiorfloridavacation.com: did not receive HSTS header
|
||||
supersalescontest.nl: did not receive HSTS header
|
||||
supersecurefancydomain.com: could not connect to host
|
||||
@ -3803,7 +3809,6 @@ terrax.info: could not connect to host
|
||||
testandroid.xyz: could not connect to host
|
||||
testbawks.com: did not receive HSTS header
|
||||
testnode.xyz: could not connect to host
|
||||
testsuite.org: could not connect to host
|
||||
texte-zur-taufe.de: did not receive HSTS header
|
||||
texter-linz.at: did not receive HSTS header
|
||||
textoplano.xyz: could not connect to host
|
||||
@ -3820,7 +3825,7 @@ thaianthro.com: did not receive HSTS header
|
||||
thaihostcool.com: max-age too low: 0
|
||||
the-construct.com: could not connect to host
|
||||
the-sky-of-valkyries.com: could not connect to host
|
||||
theamateurs.net: did not receive HSTS header
|
||||
theamateurs.net: could not connect to host
|
||||
theater.cf: could not connect to host
|
||||
theberkshirescompany.com: could not connect to host
|
||||
thebrotherswarde.com: could not connect to host
|
||||
@ -3842,7 +3847,6 @@ themerchandiser.net: [Exception... "Component returned failure code: 0x80004005
|
||||
themicrocapital.com: could not connect to host
|
||||
themillerslive.com: could not connect to host
|
||||
theodorejones.info: could not connect to host
|
||||
theojones.name: did not receive HSTS header
|
||||
thepartywarehouse.co.uk: did not receive HSTS header
|
||||
thepiratebay.al: could not connect to host
|
||||
thepiratebay.tech: could not connect to host
|
||||
@ -3927,6 +3931,7 @@ toomanypillows.com: could not connect to host
|
||||
topbargains.com.au: did not receive HSTS header
|
||||
topmarine.se: could not connect to host
|
||||
topnewstoday.org: could not connect to host
|
||||
topodin.com: did not receive HSTS header
|
||||
topshelfguild.com: could not connect to host
|
||||
torahanytime.com: did not receive HSTS header
|
||||
tosecure.link: could not connect to host
|
||||
@ -3967,7 +3972,6 @@ tubepro.de: max-age too low: 600000
|
||||
tuingereedschappen.net: could not connect to host
|
||||
tunai.id: could not connect to host
|
||||
turnik-67.ru: could not connect to host
|
||||
turniker.ru: could not connect to host
|
||||
turtlementors.com: could not connect to host
|
||||
tuturulianda.com: did not receive HSTS header
|
||||
tuvalie.com: could not connect to host
|
||||
@ -4066,7 +4070,6 @@ uy.search.yahoo.com: did not receive HSTS header
|
||||
uz.search.yahoo.com: did not receive HSTS header
|
||||
uzmandroid.net: could not connect to host
|
||||
uzmandroid.top: could not connect to host
|
||||
v2ex.us: could not connect to host
|
||||
v4veedu.com: could not connect to host
|
||||
vaddder.com: could not connect to host
|
||||
valethound.com: could not connect to host
|
||||
@ -4121,7 +4124,6 @@ vistarait.com: did not receive HSTS header
|
||||
vitalorange.com: did not receive HSTS header
|
||||
viva-french.com: did not receive HSTS header
|
||||
vlastimilburian.cz: did not receive HSTS header
|
||||
vlogge.com: could not connect to host
|
||||
vlora.city: could not connect to host
|
||||
vm0.eu: did not receive HSTS header
|
||||
vmrdev.com: could not connect to host
|
||||
@ -4141,7 +4143,7 @@ vxstream-sandbox.com: [Exception... "Component returned failure code: 0x80004005
|
||||
vyncke.org: max-age too low: 2678400
|
||||
vyskocil.eu: could not connect to host
|
||||
vzk.io: could not connect to host
|
||||
w4a.fr: max-age too low: 0
|
||||
w4a.fr: did not receive HSTS header
|
||||
w4xzr.top: could not connect to host
|
||||
w4xzr.xyz: could not connect to host
|
||||
waixingrenfuli7.vip: could not connect to host
|
||||
@ -4150,6 +4152,7 @@ walkeryoung.ca: could not connect to host
|
||||
wallet.google.com: did not receive HSTS header (error ignored - included regardless)
|
||||
wallsblog.dk: could not connect to host
|
||||
walnutgaming.co.uk: could not connect to host
|
||||
walnutgaming.com: could not connect to host
|
||||
wanban.io: could not connect to host
|
||||
wangqiliang.org: could not connect to host
|
||||
wangzuan168.cc: did not receive HSTS header
|
||||
@ -4159,8 +4162,10 @@ warehost.de: did not receive HSTS header
|
||||
warhistoryonline.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
warmlyyours.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
warped.com: did not receive HSTS header
|
||||
warsentech.com: could not connect to host
|
||||
wassim.is: could not connect to host
|
||||
watchium.com: did not receive HSTS header
|
||||
watertrails.io: could not connect to host
|
||||
watsonhall.uk: could not connect to host
|
||||
wave.is: could not connect to host
|
||||
wavefrontsystemstech.com: could not connect to host
|
||||
@ -4169,8 +4174,8 @@ wear2work.nl: did not receive HSTS header
|
||||
wearandcare.net: could not connect to host
|
||||
weaverhairextensions.nl: could not connect to host
|
||||
web.cc: did not receive HSTS header
|
||||
web4all.fr: max-age too low: 0
|
||||
web4pro.fr: max-age too low: 0
|
||||
web4all.fr: did not receive HSTS header
|
||||
web4pro.fr: did not receive HSTS header
|
||||
webandwords.com.au: could not connect to host
|
||||
webassadors.com: could not connect to host
|
||||
webdesign-kronberg.de: did not receive HSTS header
|
||||
@ -4184,7 +4189,6 @@ webmaniabr.com: did not receive HSTS header
|
||||
webmarketingfestival.it: did not receive HSTS header
|
||||
webnosql.com: could not connect to host
|
||||
webperformance.ru: max-age too low: 3600
|
||||
websenat.de: could not connect to host
|
||||
webstory.xyz: could not connect to host
|
||||
webswitch.io: could not connect to host
|
||||
webtiles.co.uk: could not connect to host
|
||||
@ -4192,7 +4196,6 @@ webwork.pw: could not connect to host
|
||||
weddingenvelopes.co.uk: did not receive HSTS header
|
||||
weddingibiza.nl: could not connect to host
|
||||
weekly.fyi: could not connect to host
|
||||
weggeweest.nl: could not connect to host
|
||||
weicn.org: could not connect to host
|
||||
weizenke.im: could not connect to host
|
||||
wellsolveit.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
@ -4270,6 +4273,7 @@ wootton95.com: could not connect to host
|
||||
woresite.jp: did not receive HSTS header
|
||||
workfone.io: did not receive HSTS header
|
||||
workwithgo.com: could not connect to host
|
||||
wow-foederation.de: could not connect to host
|
||||
wowapi.org: could not connect to host
|
||||
wphostingspot.com: did not receive HSTS header
|
||||
wpmetadatastandardsproject.org: could not connect to host
|
||||
@ -4337,11 +4341,11 @@ xn--lgb3a8bcpn.ga: could not connect to host
|
||||
xn--lgb3a8bcpn.gq: could not connect to host
|
||||
xn--lgb3a8bcpn.ml: could not connect to host
|
||||
xn--ls8hi7a.tk: could not connect to host
|
||||
xn--maraa-rta.org: could not connect to host
|
||||
xn--mgbbh2a9fub.xn--ngbc5azd: did not receive HSTS header
|
||||
xn--neb-tma3u8u.xyz: could not connect to host
|
||||
xn--werner-schffer-fib.de: could not connect to host
|
||||
xnode.org: did not receive HSTS header
|
||||
xobox.me: could not connect to host
|
||||
xoffy.com: did not receive HSTS header
|
||||
xombra.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 121" data: no]
|
||||
xpi.fr: could not connect to host
|
||||
@ -4435,7 +4439,6 @@ zoneminder.com: did not receive HSTS header
|
||||
zoo24.de: did not receive HSTS header
|
||||
zoomingin.net: max-age too low: 5184000
|
||||
zortium.report: could not connect to host
|
||||
zorz.info: could not connect to host
|
||||
zoznamrealit.sk: did not receive HSTS header
|
||||
zqhong.com: could not connect to host
|
||||
ztan.tk: could not connect to host
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user