| OLD | NEW |
| 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 758 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 769 | 769 |
| 770 // Min and max limits for Smi values. | 770 // Min and max limits for Smi values. |
| 771 static const int kMinValue = -(1 << (kBitsPerPointer - (kSmiTagSize + 1))); | 771 static const int kMinValue = -(1 << (kBitsPerPointer - (kSmiTagSize + 1))); |
| 772 static const int kMaxValue = (1 << (kBitsPerPointer - (kSmiTagSize + 1))) - 1; | 772 static const int kMaxValue = (1 << (kBitsPerPointer - (kSmiTagSize + 1))) - 1; |
| 773 | 773 |
| 774 private: | 774 private: |
| 775 DISALLOW_IMPLICIT_CONSTRUCTORS(Smi); | 775 DISALLOW_IMPLICIT_CONSTRUCTORS(Smi); |
| 776 }; | 776 }; |
| 777 | 777 |
| 778 | 778 |
| 779 // Failure is used for reporing out of memory situations and | 779 // Failure is used for reporting out of memory situations and |
| 780 // propagating exceptions through the runtime system. Failure objects | 780 // propagating exceptions through the runtime system. Failure objects |
| 781 // are transient and cannot occur as part of the objects graph. | 781 // are transient and cannot occur as part of the objects graph. |
| 782 // | 782 // |
| 783 // Failures are a single word, encoded as follows: | 783 // Failures are a single word, encoded as follows: |
| 784 // +-------------------------+---+--+--+ | 784 // +-------------------------+---+--+--+ |
| 785 // |rrrrrrrrrrrrrrrrrrrrrrrrr|sss|tt|11| | 785 // |rrrrrrrrrrrrrrrrrrrrrrrrr|sss|tt|11| |
| 786 // +-------------------------+---+--+--+ | 786 // +-------------------------+---+--+--+ |
| 787 // | 787 // |
| 788 // The low two bits, 0-1, are the failure tag, 11. The next two bits, | 788 // The low two bits, 0-1, are the failure tag, 11. The next two bits, |
| 789 // 2-3, are a failure type tag 'tt' with possible values: | 789 // 2-3, are a failure type tag 'tt' with possible values: |
| (...skipping 3447 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4237 } else { | 4237 } else { |
| 4238 value &= ~(1 << bit_position); | 4238 value &= ~(1 << bit_position); |
| 4239 } | 4239 } |
| 4240 return value; | 4240 return value; |
| 4241 } | 4241 } |
| 4242 }; | 4242 }; |
| 4243 | 4243 |
| 4244 } } // namespace v8::internal | 4244 } } // namespace v8::internal |
| 4245 | 4245 |
| 4246 #endif // V8_OBJECTS_H_ | 4246 #endif // V8_OBJECTS_H_ |
| OLD | NEW |