Closed Bug 430871 Opened 16 years ago Closed 16 years ago

JSINVOKE_INTERNAL and JSFRAME_INTERNAL are dead wood

Categories

(Core :: JavaScript Engine, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: igor, Assigned: igor)

References

Details

Attachments

(1 file, 1 obsolete file)

Prior fixing bug 420399 JSINVOKE_INTERNAL and JSFRAME_INTERNAL flags was used to implement __noSuchMethod__ support. As the result of changes in that bug both these flags became unused dead wood that is just passed arround various functions. It would be nice to eliminate the flags.
Attached patch v1 (obsolete) — Splinter Review
This is straightforward removal of unused flags.
Attachment #317782 - Flags: review?(brendan)
Attachment #317782 - Attachment is patch: true
Attachment #317782 - Attachment mime type: application/octet-stream → text/plain
Comment on attachment 317782 [details] [diff] [review]
v1

> #define JSFRAME_CONSTRUCTING   0x01 /* frame is for a constructor invocation */
>-#define JSFRAME_INTERNAL       0x02 /* internal call, not invoked by a script */
>-#define JSFRAME_ASSIGNING      0x04 /* a complex (not simplex JOF_ASSIGNING) op
>+#define JSFRAME_ASSIGNING      0x02 /* a complex (not simplex JOF_ASSIGNING) op
>                                        is currently assigning to a property */
>-#define JSFRAME_DEBUGGER       0x08 /* frame for JS_EvaluateInStackFrame */
>-#define JSFRAME_EVAL           0x10 /* frame for obj_eval */
>-#define JSFRAME_SCRIPT_OBJECT  0x20 /* compiling source for a Script object */
>-#define JSFRAME_YIELDING       0x40 /* js_Interpret dispatched JSOP_YIELD */
>-#define JSFRAME_ITERATOR       0x80 /* trying to get an iterator for for-in */
>-#define JSFRAME_POP_BLOCKS    0x100 /* scope chain contains blocks to pop */
>-#define JSFRAME_GENERATOR     0x200 /* frame belongs to generator-iterator */
>-#define JSFRAME_ROOTED_ARGV   0x400 /* frame.argv is rooted by the caller */
>-#define JSFRAME_COMPUTED_THIS 0x800 /* frame.thisp was computed already */
>+#define JSFRAME_DEBUGGER       0x04 /* frame for JS_EvaluateInStackFrame */
>+#define JSFRAME_EVAL           0x08 /* frame for obj_eval */
>+#define JSFRAME_SCRIPT_OBJECT  0x10 /* compiling source for a Script object */
>+#define JSFRAME_YIELDING       0x20 /* js_Interpret dispatched JSOP_YIELD */
>+#define JSFRAME_ITERATOR       0x40 /* trying to get an iterator for for-in */
>+#define JSFRAME_POP_BLOCKS     0x80 /* scope chain contains blocks to pop */
>+#define JSFRAME_GENERATOR     0x100 /* frame belongs to generator-iterator */
>+#define JSFRAME_ROOTED_ARGV   0x200 /* frame.argv is rooted by the caller */
>+#define JSFRAME_COMPUTED_THIS 0x400 /* frame.thisp was computed already */

To minimize the patch and because order doesn't matter, why not just rotate JSFRAME_COMPUTED_THIS down into JSFRAME_INTERNAL's position and bit value? r=me with that, thanks.

/be
Attachment #317782 - Flags: review?(brendan) → review+
Attached patch v2Splinter Review
The new version of the patch rotates the flags in jsinterp.c to minimize the changes.
Attachment #317782 - Attachment is obsolete: true
Attachment #317787 - Flags: review+
Comment on attachment 317787 [details] [diff] [review]
v2

Asking for 1.9 approval as this is safe change to remove unused flags. It minimize the amount of changes to fix bug 429739, 1.9 blocker.
Attachment #317787 - Flags: approval1.9?
Comment on attachment 317787 [details] [diff] [review]
v2

a1.9+=damons
Attachment #317787 - Flags: approval1.9? → approval1.9+
Removal of accidentally set security flags
Group: security
I checked in the patch from the comment 3:

http://bonsai.mozilla.org/cvsquery.cgi?module=PhoenixTinderbox&branch=HEAD&cvsroot=%2Fcvsroot&date=explicit&mindate=1209365284&maxdate=1209365406&who=igor%25mir2.org
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Flags: in-testsuite-
Flags: in-litmus-
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: