summaryrefslogtreecommitdiff
path: root/Source/JavaScriptCore/dfg/DFGClobberize.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/dfg/DFGClobberize.cpp')
-rw-r--r--Source/JavaScriptCore/dfg/DFGClobberize.cpp39
1 files changed, 6 insertions, 33 deletions
diff --git a/Source/JavaScriptCore/dfg/DFGClobberize.cpp b/Source/JavaScriptCore/dfg/DFGClobberize.cpp
index a693ba41b..be6185629 100644
--- a/Source/JavaScriptCore/dfg/DFGClobberize.cpp
+++ b/Source/JavaScriptCore/dfg/DFGClobberize.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2013-2015 Apple Inc. All rights reserved.
+ * Copyright (C) 2013 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -28,53 +28,26 @@
#if ENABLE(DFG_JIT)
-#include "JSCInlines.h"
+#include "Operations.h"
namespace JSC { namespace DFG {
bool doesWrites(Graph& graph, Node* node)
{
- NoOpClobberize noOp;
+ NoOpClobberize addRead;
CheckClobberize addWrite;
- clobberize(graph, node, noOp, addWrite, noOp);
+ clobberize(graph, node, addRead, addWrite);
return addWrite.result();
}
-bool accessesOverlap(Graph& graph, Node* node, AbstractHeap heap)
-{
- NoOpClobberize noOp;
- AbstractHeapOverlaps addAccess(heap);
- clobberize(graph, node, addAccess, addAccess, noOp);
- return addAccess.result();
-}
-
bool writesOverlap(Graph& graph, Node* node, AbstractHeap heap)
{
- NoOpClobberize noOp;
+ NoOpClobberize addRead;
AbstractHeapOverlaps addWrite(heap);
- clobberize(graph, node, noOp, addWrite, noOp);
+ clobberize(graph, node, addRead, addWrite);
return addWrite.result();
}
-bool clobbersHeap(Graph& graph, Node* node)
-{
- bool result = false;
- clobberize(
- graph, node, NoOpClobberize(),
- [&] (AbstractHeap heap) {
- switch (heap.kind()) {
- case World:
- case Heap:
- result = true;
- break;
- default:
- break;
- }
- },
- NoOpClobberize());
- return result;
-}
-
} } // namespace JSC::DFG
#endif // ENABLE(DFG_JIT)