aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/compiler/xla/service/hlo_verifier.cc
diff options
context:
space:
mode:
authorGravatar Michael Kuperstein <mkuper@google.com>2018-06-29 10:57:24 -0700
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2018-06-29 10:59:52 -0700
commitec0a702ff1f22b73cec2d8f14c7a84c5a02856fd (patch)
treebbe4a56f06e157fb69628fd40e4ab66f0ece27ea /tensorflow/compiler/xla/service/hlo_verifier.cc
parentaa060bebb0fb064460ae4c3e92a0272be4ea04de (diff)
[XLA] Add key-value version of Sort HLO.
This is only currently implemented in the evaluator backend, and even that implementation is partial - the key and value type must match. PiperOrigin-RevId: 202673122
Diffstat (limited to 'tensorflow/compiler/xla/service/hlo_verifier.cc')
-rw-r--r--tensorflow/compiler/xla/service/hlo_verifier.cc11
1 files changed, 10 insertions, 1 deletions
diff --git a/tensorflow/compiler/xla/service/hlo_verifier.cc b/tensorflow/compiler/xla/service/hlo_verifier.cc
index fb39c6f085..27c9529b11 100644
--- a/tensorflow/compiler/xla/service/hlo_verifier.cc
+++ b/tensorflow/compiler/xla/service/hlo_verifier.cc
@@ -167,7 +167,16 @@ Status ShapeVerifier::HandleReverse(HloInstruction* reverse) {
}
Status ShapeVerifier::HandleSort(HloInstruction* sort) {
- return CheckUnaryShape(sort);
+ if (sort->operand_count() == 2 &&
+ !ShapeUtil::SameDimensions(sort->operand(0)->shape(),
+ sort->operand(1)->shape())) {
+ return InternalError(
+ "Expected sort to have to have the same dimensions for the keys and "
+ "the values. Keys shape is: %s\n, Values shape is: %s",
+ ShapeUtil::HumanString(sort->operand(0)->shape()).c_str(),
+ ShapeUtil::HumanString(sort->operand(1)->shape()).c_str());
+ }
+ return CheckVariadicShape(sort);
}
Status ShapeVerifier::HandleConstant(HloInstruction* constant) {