![]() |
v8
3.11.10(node0.8.26)
V8 is Google's open source JavaScript engine
|
#include <hydrogen-instructions.h>


Public Member Functions | |
| Range () | |
| Range (int32_t lower, int32_t upper) | |
| int32_t | upper () const |
| int32_t | lower () const |
| Range * | next () const |
| Range * | CopyClearLower (Zone *zone) const |
| Range * | CopyClearUpper (Zone *zone) const |
| Range * | Copy (Zone *zone) const |
| int32_t | Mask () const |
| void | set_can_be_minus_zero (bool b) |
| bool | CanBeMinusZero () const |
| bool | CanBeZero () const |
| bool | CanBeNegative () const |
| bool | Includes (int value) const |
| bool | IsMostGeneric () const |
| bool | IsInSmiRange () const |
| void | KeepOrder () |
| void | StackUpon (Range *other) |
| void | Intersect (Range *other) |
| void | Union (Range *other) |
| void | AddConstant (int32_t value) |
| void | Sar (int32_t value) |
| void | Shl (int32_t value) |
| bool | AddAndCheckOverflow (Range *other) |
| bool | SubAndCheckOverflow (Range *other) |
| bool | MulAndCheckOverflow (Range *other) |
Public Member Functions inherited from ZoneObject | |
| INLINE (void *operator new(size_t size, Zone *zone)) | |
| void | operator delete (void *, size_t) |
| void | operator delete (void *pointer, Zone *zone) |
Definition at line 227 of file hydrogen-instructions.h.
|
inline |
Definition at line 229 of file hydrogen-instructions.h.
Referenced by Range::Copy(), Range::CopyClearLower(), and Range::CopyClearUpper().
|
inline |
Definition at line 235 of file hydrogen-instructions.h.
| bool AddAndCheckOverflow | ( | Range * | other | ) |
Definition at line 181 of file hydrogen-instructions.cc.
References Range::KeepOrder(), Range::lower(), and Range::upper().
Referenced by HAdd::InferRange().
| void AddConstant | ( | int32_t | value | ) |
Definition at line 132 of file hydrogen-instructions.cc.
|
inline |
Definition at line 257 of file hydrogen-instructions.h.
References Range::CanBeZero().
Referenced by Range::Copy(), HAdd::InferRange(), HSub::InferRange(), HMod::InferRange(), HDiv::InferRange(), Range::Intersect(), Range::IsMostGeneric(), and Range::Union().
|
inline |
Definition at line 259 of file hydrogen-instructions.h.
Referenced by HMul::InferRange(), and HMod::InferRange().
|
inline |
Definition at line 258 of file hydrogen-instructions.h.
Referenced by Range::CanBeMinusZero(), HSub::InferRange(), and HMul::InferRange().
Definition at line 250 of file hydrogen-instructions.h.
References Range::CanBeMinusZero(), Range::Range(), and Range::set_can_be_minus_zero().
Referenced by HChange::InferRange(), HPhi::InferRange(), HAdd::InferRange(), HSub::InferRange(), HMul::InferRange(), HShl::InferRange(), HShr::InferRange(), and HSar::InferRange().
Definition at line 244 of file hydrogen-instructions.h.
References v8::internal::kMinInt, and Range::Range().
Definition at line 247 of file hydrogen-instructions.h.
References v8::internal::kMaxInt, and Range::Range().
|
inline |
Definition at line 260 of file hydrogen-instructions.h.
| void Intersect | ( | Range * | other | ) |
Definition at line 143 of file hydrogen-instructions.cc.
References Range::CanBeMinusZero(), v8::internal::Max(), v8::internal::Min(), and Range::set_can_be_minus_zero().
Referenced by Range::StackUpon().
|
inline |
Definition at line 264 of file hydrogen-instructions.h.
References Smi::kMaxValue, and Smi::kMinValue.
Referenced by HChange::InferRange().
|
inline |
Definition at line 261 of file hydrogen-instructions.h.
References Range::CanBeMinusZero(), v8::internal::kMaxInt, and v8::internal::kMinInt.
| void KeepOrder | ( | ) |
Definition at line 205 of file hydrogen-instructions.cc.
Referenced by Range::AddAndCheckOverflow(), and Range::SubAndCheckOverflow().
|
inline |
Definition at line 242 of file hydrogen-instructions.h.
Referenced by Range::AddAndCheckOverflow(), Range::MulAndCheckOverflow(), and Range::SubAndCheckOverflow().
| int32_t Mask | ( | ) | const |
Definition at line 119 of file hydrogen-instructions.cc.
Referenced by HBitwise::InferRange().
| bool MulAndCheckOverflow | ( | Range * | other | ) |
Definition at line 221 of file hydrogen-instructions.cc.
References Range::lower(), v8::internal::Max(), v8::internal::Min(), and Range::upper().
Referenced by HMul::InferRange().
|
inline |
Definition at line 243 of file hydrogen-instructions.h.
Referenced by HValue::RemoveLastAddedRange().
| void Sar | ( | int32_t | value | ) |
Definition at line 159 of file hydrogen-instructions.cc.
References Range::set_can_be_minus_zero().
Referenced by HShr::InferRange(), and HSar::InferRange().
|
inline |
Definition at line 256 of file hydrogen-instructions.h.
Referenced by Range::Copy(), HValue::InferRange(), HChange::InferRange(), HConstant::InferRange(), HAdd::InferRange(), HSub::InferRange(), HMul::InferRange(), HMod::InferRange(), HDiv::InferRange(), HShl::InferRange(), HShr::InferRange(), HSar::InferRange(), Range::Intersect(), Range::Sar(), Range::Shl(), and Range::Union().
| void Shl | ( | int32_t | value | ) |
Definition at line 167 of file hydrogen-instructions.cc.
References v8::internal::kMaxInt, v8::internal::kMinInt, and Range::set_can_be_minus_zero().
Referenced by HShl::InferRange().
|
inline |
Definition at line 272 of file hydrogen-instructions.h.
References Range::Intersect().
Referenced by HValue::AddNewRange().
| bool SubAndCheckOverflow | ( | Range * | other | ) |
Definition at line 193 of file hydrogen-instructions.cc.
References Range::KeepOrder(), Range::lower(), and Range::upper().
Referenced by HSub::InferRange().
| void Union | ( | Range * | other | ) |
Definition at line 151 of file hydrogen-instructions.cc.
References Range::CanBeMinusZero(), v8::internal::Max(), v8::internal::Min(), and Range::set_can_be_minus_zero().
Referenced by HPhi::InferRange().
|
inline |
Definition at line 241 of file hydrogen-instructions.h.
Referenced by Range::AddAndCheckOverflow(), Range::MulAndCheckOverflow(), and Range::SubAndCheckOverflow().