Commit 4f2586b9 authored by Milad Farazmand's avatar Milad Farazmand Committed by Commit Bot

PPC/S390: initiating pointer compression fixes

Change-Id: I290ea07e4f6c66d04ee0daa04ac78a47d9f4432e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1535519Reviewed-by: 's avatarJunliang Yan <jyan@ca.ibm.com>
Reviewed-by: 's avatarMilad Farazmand <miladfar@ca.ibm.com>
Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com>
Cr-Commit-Position: refs/heads/master@{#60410}
parent 4db62d2a
......@@ -12,7 +12,7 @@ namespace compiler {
// PPC-specific opcodes that specify which assembly sequence to emit.
// Most opcodes specify a single instruction.
#define TARGET_ARCH_OPCODE_LIST(V) \
V(PPC_Peek) \
V(PPC_Peek) \
V(PPC_And) \
V(PPC_AndComplement) \
V(PPC_Or) \
......@@ -128,6 +128,12 @@ namespace compiler {
V(PPC_StoreDouble) \
V(PPC_ByteRev32) \
V(PPC_ByteRev64) \
V(PPC_DecompressSigned) \
V(PPC_DecompressPointer) \
V(PPC_DecompressAny) \
V(PPC_CompressSigned) \
V(PPC_CompressPointer) \
V(PPC_CompressAny) \
V(PPC_AtomicStoreUint8) \
V(PPC_AtomicStoreUint16) \
V(PPC_AtomicStoreWord32) \
......
......@@ -110,6 +110,12 @@ int InstructionScheduler::GetTargetInstructionFlags(
case kPPC_BitcastDoubleToInt64:
case kPPC_ByteRev32:
case kPPC_ByteRev64:
case kPPC_DecompressSigned:
case kPPC_DecompressPointer:
case kPPC_DecompressAny:
case kPPC_CompressSigned:
case kPPC_CompressPointer:
case kPPC_CompressAny:
return kNoOpcodeFlags;
case kPPC_LoadWordS8:
......
......@@ -1140,6 +1140,34 @@ void InstructionSelector::VisitChangeUint32ToUint64(Node* node) {
VisitRR(this, kPPC_Uint32ToUint64, node);
}
void InstructionSelector::VisitChangeTaggedToCompressed(Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeTaggedPointerToCompressedPointer(
Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeTaggedSignedToCompressedSigned(
Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeCompressedToTagged(Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeCompressedPointerToTaggedPointer(
Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeCompressedSignedToTaggedSigned(
Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeFloat64ToUint64(Node* node) {
VisitRR(this, kPPC_DoubleToUint64, node);
}
......
......@@ -163,6 +163,12 @@ namespace compiler {
V(S390_StoreReverse64) \
V(S390_StoreFloat32) \
V(S390_StoreDouble) \
V(S390_DecompressSigned) \
V(S390_DecompressPointer) \
V(S390_DecompressAny) \
V(S390_CompressSigned) \
V(S390_CompressPointer) \
V(S390_CompressAny) \
V(S390_Word64AtomicExchangeUint8) \
V(S390_Word64AtomicExchangeUint16) \
V(S390_Word64AtomicExchangeUint32) \
......
......@@ -138,6 +138,12 @@ int InstructionScheduler::GetTargetInstructionFlags(
case kS390_LoadAndTestWord64:
case kS390_LoadAndTestFloat32:
case kS390_LoadAndTestFloat64:
case kS390_DecompressSigned:
case kS390_DecompressPointer:
case kS390_DecompressAny:
case kS390_CompressSigned:
case kS390_CompressPointer:
case kS390_CompressAny:
return kNoOpcodeFlags;
case kS390_LoadWordS8:
......
......@@ -2198,6 +2198,34 @@ bool InstructionSelector::IsTailCallAddressImmediate() { return false; }
int InstructionSelector::GetTempsCountForTailCallFromJSFunction() { return 3; }
void InstructionSelector::VisitChangeTaggedToCompressed(Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeTaggedPointerToCompressedPointer(
Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeTaggedSignedToCompressedSigned(
Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeCompressedToTagged(Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeCompressedPointerToTaggedPointer(
Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitChangeCompressedSignedToTaggedSigned(
Node* node) {
UNIMPLEMENTED();
}
void InstructionSelector::VisitWord32AtomicLoad(Node* node) {
LoadRepresentation load_rep = LoadRepresentationOf(node->op());
DCHECK(load_rep.representation() == MachineRepresentation::kWord8 ||
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment