Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(70)

Unified Diff: src/compiler/change-lowering.h

Issue 1693563004: Convert between tagged and untagged kSimd128 values. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Rebase Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/compiler/change-lowering.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/compiler/change-lowering.h
diff --git a/src/compiler/change-lowering.h b/src/compiler/change-lowering.h
index 7e5078bf84bed20e0fe8f7fa12bbc9a6821e0876..a279a42d1a95ee20e00fb5a7ab5bb96b6a51f460 100644
--- a/src/compiler/change-lowering.h
+++ b/src/compiler/change-lowering.h
@@ -28,10 +28,16 @@ class ChangeLowering final : public Reducer {
private:
Node* HeapNumberValueIndexConstant();
+ Node* Simd128ValueIndexConstant();
Node* SmiMaxValueConstant();
Node* SmiShiftBitsConstant();
Node* AllocateHeapNumberWithValue(Node* value, Node* control);
+#define SIMD128_ALLOCATE(TYPE, Type, type, lane_count, lane_type) \
+ Node* Allocate##Type##WithValue(Node* value);
+ SIMD128_TYPES(SIMD128_ALLOCATE)
+#undef SIMD128_ALLOCATE
+
Node* ChangeInt32ToFloat64(Node* value);
Node* ChangeInt32ToSmi(Node* value);
Node* ChangeSmiToFloat64(Node* value);
@@ -39,6 +45,10 @@ class ChangeLowering final : public Reducer {
Node* ChangeUint32ToFloat64(Node* value);
Node* ChangeUint32ToSmi(Node* value);
Node* LoadHeapNumberValue(Node* value, Node* control);
+#define SIMD128_LOAD(TYPE, Type, type, lane_count, lane_type) \
+ Node* Load##Type##Value(Node* value);
+ SIMD128_TYPES(SIMD128_LOAD)
+#undef SIMD128_LOAD
Node* TestNotSmi(Node* value);
Reduction ChangeBitToBool(Node* value, Node* control);
@@ -49,6 +59,11 @@ class ChangeLowering final : public Reducer {
Reduction ChangeTaggedToUI32(Node* value, Node* control,
Signedness signedness);
Reduction ChangeUint32ToTagged(Node* value, Node* control);
+#define SIMD128_CHANGE(TYPE, Type, type, lane_count, lane_type) \
+ Reduction Change##Type##ToTagged(Node* value, Node* control); \
+ Reduction ChangeTaggedTo##Type(Node* value, Node* control);
+ SIMD128_TYPES(SIMD128_CHANGE)
+#undef SIMD128_CHANGE
Reduction LoadField(Node* node);
Reduction StoreField(Node* node);
@@ -75,6 +90,10 @@ class ChangeLowering final : public Reducer {
JSGraph* const jsgraph_;
SetOncePointer<const Operator> allocate_heap_number_operator_;
+#define SIMD128_OPERATOR(TYPE, Type, type, lane_count, lane_type) \
+ SetOncePointer<const Operator> allocate_##type##_value_operator_;
+ SIMD128_TYPES(SIMD128_OPERATOR)
+#undef SIMD128_OPERATOR
};
} // namespace compiler
« no previous file with comments | « no previous file | src/compiler/change-lowering.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698