Last Comment Bug 621031 - AIX: jsstr.cpp #pragma pack options not valid for OS
: AIX: jsstr.cpp #pragma pack options not valid for OS
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: Trunk
: PowerPC AIX
: -- normal (vote)
: mozilla6
Assigned To: Andrew Paprocki
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2010-12-22 12:51 PST by Andrew Paprocki
Modified: 2011-04-20 01:40 PDT (History)
3 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Fix #ifdefs around pragmas and alignment (2.08 KB, patch)
2010-12-22 12:51 PST, Andrew Paprocki
no flags Details | Diff | Review
Fix #ifdefs around pragmas and alignment (2.71 KB, patch)
2011-04-13 10:04 PDT, Andrew Paprocki
mrbkap: review+
Details | Diff | Review
Fix #ifdefs around pragmas and alignment (2.72 KB, patch)
2011-04-19 12:53 PDT, Andrew Paprocki
mrbkap: review+
Details | Diff | Review

Description Andrew Paprocki 2010-12-22 12:51:50 PST
Created attachment 499365 [details] [diff] [review]
Fix #ifdefs around pragmas and alignment

The #pragma packing going on in jsstr.cpp spews on AIX because the default gcc case is not valid inside xlC. This patch modifies the #ifdef logic so that xlC is supported. Also, the __attribute__ ((aligned (8))) usage is used because xlC supports it.

"jsstr.cpp", line 3180.14: 1540-1400 (W) The incorrect pragma is ignored.
"jsstr.cpp", line 3180.14: 1540-1404 (W) The parameter "push" specified for "pragma pack" is not valid. The pragma is ignored.
"jsstr.cpp", line 3192.9: 1540-1421 (W) Attempting to pop an empty "pragma pack" stack. The current pack setting may be invalid.
"jsstr.cpp", line 3240.14: 1540-1400 (W) The incorrect pragma is ignored.
"jsstr.cpp", line 3240.14: 1540-1404 (W) The parameter "push" specified for "pragma pack" is not valid. The pragma is ignored.
"jsstr.cpp", line 3252.9: 1540-1421 (W) Attempting to pop an empty "pragma pack" stack. The current pack setting may be invalid.
"jsstr.cpp", line 3276.14: 1540-1400 (W) The incorrect pragma is ignored.
"jsstr.cpp", line 3276.14: 1540-1404 (W) The parameter "push" specified for "pragma pack" is not valid. The pragma is ignored.
"jsstr.cpp", line 3304.9: 1540-1421 (W) Attempting to pop an empty "pragma pack" stack. The current pack setting may be invalid.
Comment 1 Mike Beltzner [:beltzner, not reading bugmail] 2011-02-16 12:56:28 PST
Comment on attachment 499365 [details] [diff] [review]
Fix #ifdefs around pragmas and alignment

r+ before a?, please

(we'll probably take these after we ship)
Comment 2 Blake Kaplan (:mrbkap) (please use needinfo!) 2011-03-08 17:01:44 PST
Comment on attachment 499365 [details] [diff] [review]
Fix #ifdefs around pragmas and alignment

Does Windows need the #pragma pack stuff here?
Comment 3 Andrew Paprocki 2011-04-13 10:04:03 PDT
Created attachment 525707 [details] [diff] [review]
Fix #ifdefs around pragmas and alignment

I cleaned up the patch. I realized all I needed to do was add the HP aCC case, IBM xlC support, and exclude -Dlint from the default case. GCC, Windows, anything else will continue to flow through to the existing default. I added a comment explaining everything so it won't be confusing later.
Comment 4 Blake Kaplan (:mrbkap) (please use needinfo!) 2011-04-13 10:46:38 PDT
Oh, and thanks for adding that comment, it was really useful.
Comment 5 Mounir Lamouri (:mounir) 2011-04-17 14:06:58 PDT
This patch doesn't seem to apply anymore on a recent trunk.
Andrew, could you update it so I will push it for you.
Comment 6 Andrew Paprocki 2011-04-19 12:53:45 PDT
Created attachment 527070 [details] [diff] [review]
Fix #ifdefs around pragmas and alignment

Updated r+ patch to apply cleanly to current m-c.
Comment 7 Mounir Lamouri (:mounir) 2011-04-19 16:34:05 PDT
Fixed in cedar. The patch will be landed in mozilla-central with the next cedar sync (usually in less than 24 hours).
Comment 8 Mounir Lamouri (:mounir) 2011-04-20 01:40:34 PDT
Pushed:
http://hg.mozilla.org/mozilla-central/rev/66b6e4eb8fe6

Thank you for this patch :)

Note You need to log in before you can comment on or make changes to this bug.