Sun WorkShop 6 update 1 ¤Î¿·µ¡Ç½ |
Âè 1 ¾Ï
Sun WorkShop 6 update 1 ¤Î¿·µ¡Ç½¤Î¾Ò²ð
¤³¤Î¾Ï¤Ç¤Ï¡¢Sun WorkShopTM 6 update 1 ¤Î¥³¥ó¥Ñ¥¤¥é¤È¥Ä¡¼¥ë¤Î¿·¤·¤¤µ¡Ç½¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£¤³¤Î¥ê¥ê¡¼¥¹¤Ï¡¢¼ç¤Ë UltraSPARCTM III ¥×¥í¥»¥Ã¥µ¤Ë¤ª¤±¤ë¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¸þ¾å¤Ë¤Í¤é¤¤¤òÄê¤á¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¾Ï¤Ï¹¹¿·¤µ¤ì¤¿ Sun WorkShop ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤´¤È¤ËÀá¤Ëʬ¤«¤ì¤Æ¤ª¤ê¡¢¿·µ¡Ç½¤Î³µÍפ¬É½¤Ë¤Þ¤È¤á¤é¤ì¤Æ¤¤¤Þ¤¹¡£°ìÉô¤Îµ¡Ç½¤Ë¤Ä¤¤¤Æ¤Ï¡¢É½¤Î¼¡¤ÎÀá¤Ç¤µ¤é¤Ë¾Ü¤·¤¯ÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¾Ï¤Ë´Þ¤Þ¤ì¤ëÀá¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£
- ¡ÖC ¥³¥ó¥Ñ¥¤¥é¡×2¥Ú¡¼¥¸
- ¡ÖC++ ¥³¥ó¥Ñ¥¤¥é¡×11¥Ú¡¼¥¸
- ¡ÖFortran ¥³¥ó¥Ñ¥¤¥é¡×25¥Ú¡¼¥¸
- ¡Ö¶è´Ö±é»»¡×29¥Ú¡¼¥¸
- ¡Ödbx¡×33¥Ú¡¼¥¸
- ¡ÖSun Performance Library¡×33¥Ú¡¼¥¸
- ¡ÖɸËÜ¥¢¥Ê¥é¥¤¥¶¡×35¥Ú¡¼¥¸
C ¥³¥ó¥Ñ¥¤¥é
ɽ 1-1 ¤Ï¡¢C ¥³¥ó¥Ñ¥¤¥é¤Î Sun WorkShop 6 update 1 ¥ê¥ê¡¼¥¹¤Ç»ÈÍѤǤ¤ë¿·µ¡Ç½¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤Îµ¡Ç½¤Î°ìÉô¤Ï¡¢É½¤Î¼¡¤ÎÀá¤Ç¤µ¤é¤Ë¾Ü¤·¤¯ÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£
ɽ 1-1 C ¥³¥ó¥Ñ¥¤¥é¤Î¿·µ¡Ç½ UltraSPARC III ¥×¥í¥»¥Ã¥µ¤Î¥µ¥Ý¡¼¥È -xtarget
-xchip
¿·¥ê¥ê¡¼¥¹¤Î -xtarget
¤ª¤è¤Ó-xchip
¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢ultra3
¤ò»ØÄê¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£UltraSPARC III ¤ÇºÇÎɤΥѥե©¡¼¥Þ¥ó¥¹¤òÆÀ¤ë¤¿¤á¤Ë¿ä¾©¤µ¤ì¤ë¥Õ¥é¥°¤Ë¤Ä¤¤¤Æ¤Ï¡¢¼¡¤ÎÀá¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£·¿¤Ë´ð¤Å¤¤¤¿²òÀϤˤè¤ëºÇŬ²½ -xalias_level
¿·¥ê¥ê¡¼¥¹¤Î C ¥³¥ó¥Ñ¥¤¥é¤Ç¤Ï¡¢·¿¤Ë´ð¤Å¤¤¤¿ÊÌ̾²òÀϤȺÇŬ²½¤ò¹Ô¤¦¤¿¤á¤Î¡¢¥ª¥×¥·¥ç¥ó¤È¥×¥é¥°¥Þ¤¬»ÈÍѤǤ¤Þ¤¹¡£ ¿·¤·¤¤¥×¥é¥°¥Þ¤Ë¤è¤ë¿ô³Ø¥ë¡¼¥Á¥ó¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Î¸þ¾å __MATHERR_ERRNO_DONTCARE
¿·¥ê¥ê¡¼¥¹¤Î cc -fast
¥³¥Þ¥ó¥É¤ÎŸ³«¤Ë¤Ï¡¢¥Þ¥¯¥í__MATHERR_ERRNO_DONTCARE
¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥Þ¥¯¥í¤Ë¤è¤ê Solaris 8 ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°´Ä¶¤Îmath.h
¤Ï¡¢math.h
¤Ç¥×¥í¥È¥¿¥¤¥×²½¤µ¤ì¤Æ¤¤¤ë¿ô³Ø¥ë¡¼¥Á¥ó¤Î°ìÉô¤ËÂФ·¤Æ¡¢¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Ë´ØÏ¢¤·¤¿¥×¥é¥°¥Þ¤òɽÌÀ¤·¤Þ¤¹¡£É¸½à¤Î¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Î¥¤¥ó¥é¥¤¥ó²½ -xbuiltin
¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤¬Í±×¤Ç¤¢¤ë¤ÈȽÃǤ·¤¿¾ì¹ç¤Ë¡¢É¸½à¤Î¥é¥¤¥Ö¥é¥ê´Ø¿ô¤ÎÁȤ߹þ¤ß´Ø¿ô¤òÂåÍÑ¡¢¤Þ¤¿¤Ï¥¤¥ó¥é¥¤¥ó²½¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢À¸À®¤µ¤ì¤ë¥³¡¼¥É¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬¸þ¾å¤·¤Þ¤¹¡£ 3 ʸ»úɽµÇ§¼±¤Î͸ú²½¤È̵¸ú²½ -xtrigraphs
¿·¤·¤¤ -xtrigraphs
¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢3 ʸ»úɽµÊÑ´¹¤ò¹Ô¤¦¤«¤É¤¦¤«¤ò»ØÄê¤Ç¤¤Þ¤¹¡£ÀèÆɤßÀøºß´ü´Ö¤Î»ØÄê»Ò -xprefetch=...,latx:
factor¤³¤Î¿·¤·¤¤¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¡¢¥Ç¡¼¥¿¤òÀèÆɤߤ¹¤ë¤¿¤á¤Ë¥³¥ó¥Ñ¥¤¥é¤¬À¸À®¤¹¤ëÌ¿Îá¤È¡¢¤½¤Î¸å»ÈÍѤ¹¤ë¥í¡¼¥É¤Þ¤¿¤Ï¥¹¥È¥¢Ì¿Îá¤Î¥Ç¡¼¥¿¤¬¤É¤ì¤À¤±Î¥¤ì¤Æ¤¤¤ë¤«¤ò»þ´ÖŪ¤Ë»ØÄê¤Ç¤¤Þ¤¹¡£ -I- ¥ª¥×¥·¥ç¥ó¤Ë¤è¤ë¥Ç¥Õ¥©¥ë¥È¸¡º÷¥Ñ¥¹¤Î̵¸ú²½ -I-
¿·¤·¤¤ -I-
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤¬¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¸¡º÷»þ¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤òºÙ¤«¤¯À©¸æ¤Ç¤¤Þ¤¹¡£
UltraSPARC III ¥×¥í¥»¥Ã¥µ¤Î¥µ¥Ý¡¼¥È
UltraSPARC III ¥×¥í¥»¥Ã¥µ¾å¤Ç¥×¥í¥°¥é¥à¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Æ¼Â¹Ô¤¹¤ë¾ì¹ç¤ËºÇÎɤΥѥե©¡¼¥Þ¥ó¥¹¤òÆÀ¤ë¤Ë¤Ï¡¢°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤Æ¤¯¤À¤µ¤¤¡£
-fast -xcrossfile -xprofile={collect:|use:}
- ¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦ (UltraSPARC III °Ê³°¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¬¡¢UltraSPARC III ¥·¥¹¥Æ¥à¤ÇÆ°ºî¤¹¤ë¤è¤¦¤Ë¥ª¥Ö¥¸¥§¥¯¥È¥Ð¥¤¥Ê¥ê¤òÀ¸À®¤¹¤ë) ¤Ë¤Ï¡¢Àµ¤·¤¤¥¥ã¥Ã¥·¥å¥µ¥¤¥º¤ÈºÇŬ²½Êý¿Ë¤¬ÀßÄꤵ¤ì¤ë¤è¤¦¤Ë°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£
- 32 ¥Ó¥Ã¥È¥³¡¼¥É¤ÎÀ¸À®¤Ë¤Ï
-xarch=v8plusb
¡¢64 ¥Ó¥Ã¥È¥³¡¼¥É¤ÎÀ¸À®¤Ë¤Ïv9b
¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£Èó¾ï¤ËÂ礤ʥǡ¼¥¿¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤¹¤ë¥×¥í¥°¥é¥à¤Î¾ì¹ç¡¢64 ¥Ó¥Ã¥È¥³¡¼¥É¤ÎÊý¤¬Í¥¤ì¤¿¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤òÆÀ¤é¤ì¤Þ¤¹¡£¤·¤«¤·¡¢-xarch=v9b
¤Ï 64 ¥Ó¥Ã¥È¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¾ì¹ç¤À¤±¤Ë»ÈÍѤ¹¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹¡£¾õ¶·¤Ë¤è¤Ã¤Æ¤Ï¡¢-xarch=v9b
¤ò»ÈÍѤ·¤¿¤¿¤á¤Ë¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬Äã²¼¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£-fast
¥ª¥×¥·¥ç¥ó¤Ï¡¢¼Â¹Ô®ÅÙ¤ò½Å»ë¤¹¤ëºÇŬ²½¤ò͸ú¤Ë¤·¡¢ºÇŬ²½¥ì¥Ù¥ë¤ò-xO5
¤Ë°ú¤¾å¤²¤Þ¤¹¡£-fast
¤ò»ÈÍѤ¹¤ë¤È¡¢²Äǽ¤Ê¾ì¹ç¤Ë¤è¤ê¹â®¤Ê»»½Ñ±é»»¤òÂåÍѤǤ¤ë¤è¤¦¤Ë¤Ê¤ë¤¿¤á¡¢-fsimple=2
¤ò»ÈÍѤ·¤Þ¤¹¡£¤·¤«¤·¤³¤Î¾ì¹ç¡¢Â¿¾¯¤Î¸í¤ê¤¬È¯À¸¤¹¤ë²ÄǽÀ¤¬¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£-xcrossfile
¤¬»ØÄꤵ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥³¥Þ¥ó¥É¹Ô¤Ë»ØÄꤵ¤ì¤¿¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ËºÇŬ²½ (Ãæ´Ö¼ê³¤Åª¤ÊºÇŬ²½¤ò´Þ¤à) ¤òŬÍѤ·¤Þ¤¹¡£-xprofile={collect:|use:}
¤Ï¡¢¥×¥í¥°¥é¥à¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Î¥×¥í¥Õ¥¡¥¤¥ë¤ò͸ú¤Ë¤·¤Þ¤¹¡£¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤è¤ê¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥³¡¼¥É¤ÎÃæ¤ÇºÇ¤âÉÑÈˤ˼¹Ԥµ¤ì¤Æ¤¤¤ë¥»¥¯¥·¥ç¥ó¤òÆÃÄꤷ¡¢ºÇÎɤθú²Ì¤òÆÀ¤ë¤¿¤á¤Î¶É½êŪ¤ÊºÇŬ²½¤ò¹Ô¤¤¤Þ¤¹¡£
Ãí --xarch={v8plusb|v9b}
¤Ë¤è¤ê UltraSPARC III ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸þ¤±¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Ï¡¢UltraSPARC III °Ê³°¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤ÏÆ°ºî¤·¤Þ¤»¤ó¡£UltraSPARC I¡¢UltraSPARC II¡¢¤ª¤è¤Ó UltraSPARC III ¤Î³Æ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¸ß´¹À¤ò°Ý»ý¤·¤¿¤Þ¤ÞÆ°ºî¤¹¤ë¥×¥í¥°¥é¥à¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Ë¤Ï¡¢-xarch={v8plusa|v9a}
¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
·¿¤Ë´ð¤Å¤¤¤¿²òÀϤˤè¤ëºÇŬ²½
¿·¤·¤¤ C ¥³¥ó¥Ñ¥¤¥é¥³¥Þ¥ó¥É
-xalias_level
¤ª¤è¤Ó¤¤¤¯¤Ä¤«¤Î¿·¤·¤¤¥×¥é¥°¥Þ¤ò»ÈÍѤ·¤Æ¡¢¥³¥ó¥Ñ¥¤¥é¤Ë·¿¤Ë´ð¤Å¤¤¤¿ÊÌ̾²òÀϤª¤è¤ÓºÇŬ²½¤ò¹Ô¤ï¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£¤³¤ì¤é¤Î³ÈÄ¥µ¡Ç½¤Ï¡¢C ¥×¥í¥°¥é¥àÆâ¤Ç¤Î¥Ý¥¤¥ó¥¿¤Î»ÈÍÑÊýË¡¤Ë´Ø¤¹¤ë·¿¤Ë´ð¤Å¤¤¤¿¾ðÊó¤ò»ØÄꤹ¤ë¤¿¤á¤Ë»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£C ¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¤³¤Î¾ðÊó¤ò»ÈÍѤ·¤Æ¥×¥í¥°¥é¥àÆâ¤Î¥Ý¥¤¥ó¥¿¤Ë´ð¤Å¤¤¤¿¥á¥â¥ê¡¼»²¾È¤ËÂФ·¤Æ¡¢ÊÌ̾¤ÎÌÀ³Î²½¤È¤¤¤¦¶Ë¤á¤ÆÍ¥¤ì¤¿½èÍý¤ò¹Ô¤¤¤Þ¤¹¡£¤³¤Î¿·¤·¤¤¥³¥ó¥Ñ¥¤¥é¥³¥Þ¥ó¥É¤Î¾ÜºÙ¤Ï¡¢
http://docs.sun.com
¤ÇÆþ¼ê¤Ç¤¤ë¡ØC ¥æ¡¼¥¶¡¼¥º¥¬¥¤¥É¤ÎÄÉÊä¡Ù(ForteTM Developer 6 update 1/Sun WorkShop 6 update 1 Collection Æâ) ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¿·¤·¤¤¥×¥é¥°¥Þ¤Ë¤è¤ë¿ô³Ø¥ë¡¼¥Á¥ó¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Î¸þ¾å
¿·¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢
-fast
¥ª¥×¥·¥ç¥ó¤òȯ¹Ô¤¹¤ë¤È¥Þ¥¯¥í__MATHERR_ERRNO_DONTCARE
¤¬ÄêµÁ¤µ¤ì¤Þ¤¹¡£¤³¤Î¥Þ¥¯¥í¤Ë¤è¤ê Solaris 8 ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°´Ä¶¤Îmath.h
¤Ï¡¢<math.h
> ¤Ç¥×¥í¥È¥¿¥¤¥×²½¤µ¤ì¤Æ¤¤¤ë¿ô³Ø¥ë¡¼¥Á¥ó¤Î°ìÉô¤ËÂФ·¤Æ¼¡¤Î¤è¤¦¤Ê¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Ë´ØÏ¢¤·¤¿¥×¥é¥°¥Þ¤òɽÌÀ¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
matherr
(3M) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢Î㳰Ū¤Ë¥³¡¼¥É¤¬¥¨¥é¡¼¤ÎÌá¤êÃͤ˰͸¤¹¤ë¾ì¹ç¤Ï¡¢-fast
¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë-U__MATHERR_ERRNO_DONTCARE
¥Þ¥¯¥í¤òȯ¹Ô¤·¤Æ¥Þ¥¯¥í¤ò̵¸ú¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£É¸½à¤Î¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Î¥¤¥ó¥é¥¤¥ó²½
ɸ½à¤Î¥é¥¤¥Ö¥é¥ê´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹¥³¡¼¥É¤ÎºÇŬ²½¥ì¥Ù¥ë¤ò¸þ¾å¤µ¤»¤ë¤Ë¤Ï¡¢
-xbuiltin[=%all|%none]
¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£É¸½à¤Î¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Î¿¤¯ (math.h
¤ästdio.h
¤Ê¤É¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤Ê¤É) ¤Ï¡¢°ìÈ̤ˤµ¤Þ¤¶¤Þ¤Ê¥×¥í¥°¥é¥à¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤Þ¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤¬»ÈÍѤµ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥·¥¹¥Æ¥à´Ø¿ô¤ÎÂå¤ï¤ê¤ËÁȤ߹þ¤ß½ã¿è²¾ÁÛ´Ø¿ô¤ò»ÈÍѤ·¤Æ¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¸þ¾å¤µ¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£-xbuiltin
¥³¥Þ¥ó¥É¤Î¹½Ê¸¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¹¡£¤³¤Î¥³¥Þ¥ó¥É¤ÎÂè°ì¤Î¥Ç¥Õ¥©¥ë¥È¤Ï
-xbuiltin=%none
¤Ç¤¹¡£¤³¤ì¤Ï¡¢É¸½à¥é¥¤¥Ö¥é¥ê¤Î¤É¤Î´Ø¿ô¤â¥¤¥ó¥é¥¤¥ó²½¤µ¤ì¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£Âè°ì¤Î¥Ç¥Õ¥©¥ë¥È¤Ï¡¢-xbuiltin
¤¬»ØÄꤵ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤ËŬÍѤµ¤ì¤Þ¤¹¡£ÂèÆó¤Î¥Ç¥Õ¥©¥ë¥È¤Ï
-xbuiltin=%all
¤Ç¤¹¡£¤³¤ì¤Ï¡¢ºÇŬ²½¤Ë¤è¤ë²þÁ±¤¬¸«¹þ¤Þ¤ì¤ë¾ì¹ç¤Ë¥³¥ó¥Ñ¥¤¥é¤¬É¸½à¥é¥¤¥Ö¥é¥ê´Ø¿ô¤ò¥¤¥ó¥é¥¤¥ó²½¤¹¤ë¤³¤È¤ò°ÕÌ£¤·¤Æ¤¤¤Þ¤¹¡£ÂèÆó¤Î¥Ç¥Õ¥©¥ë¥È¤Ï¡¢-xbuiltin
¤¬°ú¿ô¤Ê¤·¤Ç»ØÄꤵ¤ì¤¿¾ì¹ç¤ËŬÍѤµ¤ì¤Þ¤¹¡£
-fast
¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¡¢-xbuiltin
¤Ï%all
¤ËÀßÄꤵ¤ì¤Þ¤¹¡£3 ʸ»úɽµÇ§¼±¤Î͸ú²½¤È̵¸ú²½
-xtrigraphs
¥ª¥×¥·¥ç¥ó¤Ï¡¢ISO/ANSI C ɸ½àµ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¥³¥ó¥Ñ¥¤¥é¤¬ 3 ʸ»úɽµ¥·¡¼¥±¥ó¥¹¤òǧ¼±¤¹¤ë¤«¤É¤¦¤«¤ò·èÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï
-xtrigraphs=yes
¤È²¾Äꤷ¡¢¥³¥ó¥Ñ¥¤¥ëñ°ÌÁ´ÂΤËÅϤäƤ¹¤Ù¤Æ¤Î 3 ʸ»úɽµ¥·¡¼¥±¥ó¥¹¤òǧ¼±¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥é¤¬ 3 ʸ»úɽµ¥·¡¼¥±¥ó¥¹¤È¤·¤Æ²ò¼á¤·¤Æ¤¤¤ëµ¿ÌäÉä (?) ¤ò´Þ¤à¥ê¥Æ¥é¥ëʸ»úÎ󤬥½¡¼¥¹¥³¡¼¥É¤Ë¸ºß¤¹¤ë¾ì¹ç¡¢
-xtrigraph=no
¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ 3 ʸ»úɽµ¥·¡¼¥±¥ó¥¹¤Îǧ¼±¤ò̵¸ú¤Ë¤Ç¤¤Þ¤¹¡£-xtrigraphs=no
¥ª¥×¥·¥ç¥ó¤Ï¡¢¥³¥ó¥Ñ¥¤¥ëñ°ÌÁ´ÂΤËÅϤäƤ¹¤Ù¤Æ¤Î 3 ʸ»úɽµ¤Îǧ¼±¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¼¡¤Î
trigraphs_demo.c
¤È¤¤¤¦¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ÎÎã¤ò¹Í¤¨¤Æ¤ß¤Þ¤·¤ç¤¦¡£
#include <stdio.h>int main (){(void) printf("(\?\?) in a string appears as (??)\n");return 0;}
-xtrigraphs=yes
¤ò»ØÄꤷ¤Æ¤³¤Î¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¡¢¼¡¤Î¤è¤¦¤Ë½ÐÎϤµ¤ì¤Þ¤¹¡£
example%cc -xtrigraphs=yes
trigraphs_demo.c
example%a.out
(??) in a string appears as (]
-xtrigraphs=no
¤ò»ØÄꤷ¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤¿¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë½ÐÎϤµ¤ì¤Þ¤¹¡£
example%cc -xtrigraphs=no
trigraphs_demo.c
example%a.out
(??) in a string appears as (??)
-xtrigraphs
¥ª¥×¥·¥ç¥ó¤Î»ÈÍÑÊýË¡¤Î¾ÜºÙ¤Ï¡¢cc
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£3 ʸ»úɽµ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¡ØC ¥æ¡¼¥¶¡¼¥º¥¬¥¤¥É¡Ù¤Î ANSI/ISO C ¤Ø¤Î°Ü¹Ô¤Ë´Ø¤¹¤ë¾Ï¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ÀèÆɤßÀøºß´ü´Ö¤Î»ØÄê»Ò
(SPARC ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à) Â絬ÌÏ¥Þ¥ë¥Á¥×¥í¥»¥Ã¥µ¾å¤Ç·×»»Î̤襤¥³¡¼¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
-xprefetch
¤Î¿·¤·¤¤¥µ¥Ö¥ª¥×¥·¥ç¥ólatx:
factor ¤ò»ÈÍѤ¹¤ë¤ÈÊØÍø¤Ê¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¡¢»ØÄꤵ¤ì¤¿·¸¿ô¤Ë½¾¤Ã¤ÆÀèÆɤߤ«¤é´ØÏ¢¤¹¤ë¥í¡¼¥É¤Þ¤¿¤Ï¥¹¥È¥¢¤Ë»ê¤ë¤Þ¤Ç¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÂÔ¤Á»þ´Ö¤òÄ´À°¤¹¤ë¤è¤¦¤Ë¥³¡¼¥É¥¸¥§¥Í¥ì¡¼¥¿¤Ë»Ø¼¨¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢
cc
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-I-
¥ª¥×¥·¥ç¥ó¤Ë¤è¤ë¥Ç¥Õ¥©¥ë¥È¸¡º÷¥Ñ¥¹¤Î̵¸ú²½¿·¤·¤¤
-I-
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤¬¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¸¡º÷¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤òºÙ¤«¤¯À©¸æ¤Ç¤¤Þ¤¹¡£¤³¤ÎÀá¤Ç¤Ï¡¢¤Þ¤º¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷¥¢¥ë¥´¥ê¥º¥à¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¡¢Â³¤¤¤Æ¤³¤ì¤é¤Î¥¢¥ë¥´¥ê¥º¥à¤ËÂФ¹¤ë-I-
¤Î¸ú²Ì¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£°úÍÑÉä¤Ç°Ï¤Þ¤ì¤¿¥Õ¥¡¥¤¥ë¤Î¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷¥¢¥ë¥´¥ê¥º¥à
#include "foo.h"
¤È¤¤¤¦·Á¼°¤Î (Æó½Å°úÍÑÉ䤬»ÈÍѤµ¤ì¤ë) ¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£
- ¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê (¤Ä¤Þ¤ê¡Ö¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ë¡×¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê)
-I
¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê (¸ºß¤¹¤ë¾ì¹ç)/usr/include
¥Ç¥£¥ì¥¯¥È¥ê»³³ç¸Ì¤Ç°Ï¤Þ¤ì¤¿¥Õ¥¡¥¤¥ë¤Î¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷¥¢¥ë¥´¥ê¥º¥à
#include <foo.h>
¤È¤¤¤¦·Á¼°¤Î (»³³ç¸Ì¤¬»ÈÍѤµ¤ì¤ë) ¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£
-I-
¥ª¥×¥·¥ç¥ó¤Ë¤è¤ë¸¡º÷¥¢¥ë¥´¥ê¥º¥à¤ÎÊѹ¹¿·¤·¤¤
-I-
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷µ¬Â§¤òºÙ¤«¤¯À©¸æ¤Ç¤¤Þ¤¹¡£¥³¥Þ¥ó¥É¹Ô¤Ë-I-
¤¬»ØÄꤵ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î¤è¤¦¤ËÆ°ºî¤·¤Þ¤¹¡£
-I
¤Ç¥Ç¥£¥ì¥¯¥È¥ê¤¬ÌÀ¼¨Åª¤Ë»ØÄꤵ¤ì¤Ê¤¤¸Â¤ê¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò¸¡º÷¤·¤Þ¤»¤ó¡£¤³¤Îµ¬Â§¤Ï¡¢#include "foo.h"
¤Î¤è¤¦¤Ê¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤âƱÍͤËŬÍѤµ¤ì¤Þ¤¹¡£#include "foo.h"
¤È¤¤¤¦·Á¼°¤Î¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¡¢¼¡¤Î½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£#include <foo.h>
¤È¤¤¤¦·Á¼°¤Î¥¤¥ó¥¯¥ë¡¼¥Éʸ¤Î¾ì¹ç¡¢¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤ò¼¡¤Î½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£¼¡¤ÎÎã¤Ï¡¢
prog.c
¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¤Ë-I-
¤ò»ÈÍѤ·¤¿·ë²Ì¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê (¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î¥Ç¥£¥ì¥¯¥È¥ê) ¤«¤é
#include "foo.h"
¤È¤¤¤¦·Á¼°¤Î¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£inc/a.h
Æâ¤Î#include "c.h"
ʸ¤ò½èÍý¤¹¤ë¾ì¹ç¡¢¥×¥ê¥×¥í¥»¥Ã¥µ¤Ïinc
¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤«¤éc.h
¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Þ¤¹¡£prog.c
Æâ¤Î#include "c.h"
ʸ¤ò½èÍý¤¹¤ë¾ì¹ç¤Ï¡¢¥×¥ê¥×¥í¥»¥Ã¥µ¤Ïprog.c
¤ò´Þ¤ó¤Ç¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤«¤éc.h
¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Þ¤¹¡£-H
¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤ò½ÐÎϤ¹¤ë¤è¤¦¤Ë¥³¥ó¥Ñ¥¤¥é¤Ë»Ø¼¨¤·¤Þ¤¹¡£
example%cc -c -Iinc -H prog.c
inc/a.hinc/c.hinc/b.hinc/c.hc.h¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢
-I-
¥ª¥×¥·¥ç¥ó¤Î¸ú²Ì¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£¥×¥ê¥×¥í¥»¥Ã¥µ¤Ï¡¢#include "foo.h"
¤È¤¤¤¦·Á¼°¤Îʸ¤ò½èÍý¤¹¤ë¾ì¹ç¤Ë¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤òÂè°ì¸õÊä¤È¤·¤Æ¸¡º÷¤·¤Þ¤»¤ó¡£Âå¤ï¤ê¤Ë¡¢-I
¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò¥³¥Þ¥ó¥É¹Ô¤Ë¸½¤ì¤ë½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£inc/a.h
Æâ¤Î#include "c.h"
ʸ¤ò½èÍý¤¹¤ë¾ì¹ç¤Ï¡¢inc/c.h
¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤Ç¤Ï¤Ê¤¯./c.h
¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Þ¤¹¡£
example%cc -c -I. -I- -Iinc -H prog.c
inc/a.h./c.hinc/b.hinc/c.h./c.h¾ÜºÙ¤Ï¡¢
cc
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Î-I-
¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£C++ ¥³¥ó¥Ñ¥¤¥é
ɽ 1-2 ¤Ï¡¢C++ ¥³¥ó¥Ñ¥¤¥é (5.2) ¤Î Sun WorkShop 6 update 1 ¥ê¥ê¡¼¥¹¤Ç»ÈÍѤǤ¤ë¿·µ¡Ç½¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤Îµ¡Ç½¤Î°ìÉô¤Ï¡¢É½¤Î¼¡¤ÎÀá¤Ç¤µ¤é¤Ë¾Ü¤·¤¯ÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£
ɽ 1-2 C++ ¥³¥ó¥Ñ¥¤¥é¤Î¿·µ¡Ç½ UltraSPARC III ¥×¥í¥»¥Ã¥µ¤Î¥µ¥Ý¡¼¥È -xtarget
-xchip
¿·¥ê¥ê¡¼¥¹¤Î -xtarget
¤ª¤è¤Ó-xchip
¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢ultra3
¤ò»ØÄê¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£UltraSPARC III ¤ÇºÇÎɤΥѥե©¡¼¥Þ¥ó¥¹¤òÆÀ¤ë¤¿¤á¤Ë¿ä¾©¤µ¤ì¤ë¥Õ¥é¥°¤Ë¤Ä¤¤¤Æ¤Ï¡¢¼¡¤ÎÀá¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥³¥ó¥Ñ¥¤¥ë»þ¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹ ¥µ¥¤¥º¤ÎÂ礤¤¥×¥í¥°¥é¥à¤Î¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥ë®ÅÙ¤¬¤«¤Ê¤ê¹â®¤Ë¤Ê¤ê¤Þ¤¹¡£¤È¤ê¤ï¤±¡¢¥Æ¥ó¥×¥ì¡¼¥È¤ò¿ÍѤ¹¤ë¥×¥í¥°¥é¥à¤Ç¤³¤Î¸ú²Ì¤¬¸²Ãø¤Ë¸½¤ì¤Þ¤¹¡£ °ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Î¼÷Ì¿ -features=tmplife
(ɸ½à¥â¡¼¥É¤Î¤ß) ¿·¤·¤¤ -features=tmplife
¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¡¢C++ ɸ½àµ¬³Ê¤Î¾ò·ï¤Ë½¾¤Ã¤Æ°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤òÇË´þ¤¹¤ë¤è¤¦¤Ë¥³¥ó¥Ñ¥¤¥é¤Ë»Ø¼¨¤·¤Þ¤¹¡£-I- ¥ª¥×¥·¥ç¥ó¤Ë¤è¤ë¥Ç¥Õ¥©¥ë¥È¸¡º÷¥Ñ¥¹¤Î̵¸ú²½ -I-
¿·¤·¤¤ -I-
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤¬¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¸¡º÷»þ¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤òºÙ¤«¤¯À©¸æ¤Ç¤¤Þ¤¹¡£C++ ¤ËÂФ¹¤ë¶è´Ö±é»»¥µ¥Ý¡¼¥È -xia
-library=[no%]interval
(SPARC ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à) C++ ¥³¥ó¥Ñ¥¤¥é¤Î¤³¤Î¥ê¥ê¡¼¥¹¤Ï¡¢¶è´Ö±é»»¥é¥¤¥Ö¥é¥ê¤ËÂФ¹¤ë C++ ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Æ¤¤¤Þ¤¹¡£ Ê£¿ô¸À¸ì¤Î¥ê¥ó¥¯ -xlang
-staticlib
¿·¤·¤¤ -xlang
¥ª¥×¥·¥ç¥ó¤Ï¡¢Fortran ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤È C++ ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤¬º®ºß¤·¤¿¥ê¥ó¥¯¤ò¹Ô¤¤¤Þ¤¹¡£3 ʸ»úɽµÇ§¼±¤Î͸ú²½¤È̵¸ú²½ -xtrigraphs
¿·¤·¤¤ -xtrigraphs
¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢3 ʸ»úɽµÊÑ´¹¤ò¹Ô¤¦¤«¤É¤¦¤«»ØÄê¤Ç¤¤Þ¤¹¡£¥ê¥ó¥«¡¼¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Î¥Õ¥£¥ë¥¿½èÍý -filt
¿·¤·¤¤ -filt
¥ª¥×¥·¥ç¥ó¤Ç¤Ï¡¢¥ê¥ó¥«¡¼¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Î¥Õ¥£¥ë¥¿½èÍý¤ò¥«¥¹¥¿¥Þ¥¤¥º¤Ç¤¤·¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢ Éä¹æ²½¤µ¤ì¤¿Ì¾Á°¤òÍ×µá¤Ç¤¤Þ¤¹¡£¶¦Í libCstd libCstd
¤Î¶¦Í¥Ð¡¼¥¸¥ç¥ó¤¬¡¢C++ ¥³¥ó¥Ñ¥¤¥é¤Îlib
¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¶¦Í libiostream libiostream
¤Î¶¦Í¥Ð¡¼¥¸¥ç¥ó¤¬¡¢C++ ¥³¥ó¥Ñ¥¤¥é¤Îlib
¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ºÇŬ²½¥×¥é¥°¥Þ C++ ¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¿·¤·¤¤ºÇŬ²½¥×¥é¥°¥Þ¤Ç¤¢¤ë no_side_effects
¤Èreturns_new_memory
¤òǧ¼±¤·¤Þ¤¹¡£³ÈÄ¥»Ò .c++ ¤Îǧ¼± ¿·¥ê¥ê¡¼¥¹¤Î C++ ¥³¥ó¥Ñ¥¤¥é¤Ï¡¢ .c++
¤ò͸ú¤Ê¥Õ¥¡¥¤¥ë̾ÀÜÈø¼¤È¤·¤Æǧ¼±¤·¤Þ¤¹¡£ÀèÆɤßÀøºß´ü´Ö¤Î»ØÄê»Ò -xprefetch=...,latx;
factor¤³¤Î¿·¤·¤¤¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¡¢¥Ç¡¼¥¿¤òÀèÆɤߤ¹¤ë¤¿¤á¤Ë¥³¥ó¥Ñ¥¤¥é¤¬À¸À®¤¹¤ëÌ¿Îá¤È¡¢¤½¤Î¸å»ÈÍѤ¹¤ë¥í¡¼¥É¤Þ¤¿¤Ï¥¹¥È¥¢Ì¿Îá¤Î¥Ç¡¼¥¿¤¬¤É¤ì¤¯¤é¤¤»þ´ÖŪ¤ËÎ¥¤ì¤Æ¤¤¤ë¤«»ØÄê¤Ç¤¤Þ¤¹¡£
UltraSPARC III ¥×¥í¥»¥Ã¥µ¤Î¥µ¥Ý¡¼¥È
UltraSPARC III ¥×¥í¥»¥Ã¥µ¾å¤Ç¥×¥í¥°¥é¥à¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Æ¼Â¹Ô¤¹¤ë¾ì¹ç¤ËºÇÎɤΥѥե©¡¼¥Þ¥ó¥¹¤òÆÀ¤ë¤Ë¤Ï¡¢°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤Æ¤¯¤À¤µ¤¤¡£
-fast -xcrossfile -xprofile={collect:|use:}
- ¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦ (UltraSPARC III °Ê³°¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¬¡¢UltraSPARC III ¥·¥¹¥Æ¥à¤ÇÆ°ºî¤¹¤ë¤è¤¦¤Ë¥ª¥Ö¥¸¥§¥¯¥È¥Ð¥¤¥Ê¥ê¤òÀ¸À®¤¹¤ë) ¤Ë¤Ï¡¢Àµ¤·¤¤¥¥ã¥Ã¥·¥å¥µ¥¤¥º¤ÈºÇŬ²½Êý¿Ë¤¬ÀßÄꤵ¤ì¤ë¤è¤¦¤Ë°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£
- 32 ¥Ó¥Ã¥È¥³¡¼¥É¤ÎÀ¸À®¤Ë¤Ï
-xarch=v8plusb
¡¢64 ¥Ó¥Ã¥È¥³¡¼¥É¤ÎÀ¸À®¤Ë¤Ïv9b
¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£-xarch=v9b
¤Ï 64 ¥Ó¥Ã¥È¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¾ì¹ç¤À¤±¤Ë»ÈÍѤ¹¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹¡£¾õ¶·¤Ë¤è¤Ã¤Æ¤Ï¡¢-xarch=v9b
¤ò»ÈÍѤ·¤¿¤¿¤á¤Ë¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬Äã²¼¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£-fast
¥ª¥×¥·¥ç¥ó¤Ï¡¢¼Â¹Ô®ÅÙ¤ò½Å»ë¤¹¤ëºÇŬ²½¤ò͸ú¤Ë¤·¡¢ºÇŬ²½¥ì¥Ù¥ë¤ò-xO5
¤Ë°ú¤¾å¤²¤Þ¤¹¡£-fast
¤ò»ÈÍѤ¹¤ë¤È¡¢²Äǽ¤Ê¾ì¹ç¤Ë¤è¤ê¹â®¤Ê»»½Ñ±é»»¤òÂåÍѤǤ¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¡¢-fsimple=2
¤ò»ÈÍѤ·¤Þ¤¹¡£¤·¤«¤·¤³¤Î¾ì¹ç¡¢Â¿¾¯¤Î¸í¤ê¤¬È¯À¸¤¹¤ë²ÄǽÀ¤¬¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£-xcrossfile
¤¬»ØÄꤵ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥³¥Þ¥ó¥É¹Ô¤Ë»ØÄꤵ¤ì¤¿¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ËºÇŬ²½ (Ãæ´Ö¼ê³¤Åª¤ÊºÇŬ²½¤ò´Þ¤à) ¤òŬÍѤ·¤Þ¤¹¡£-xprofile={collect:|use:}
¤Ï¡¢¥×¥í¥°¥é¥à¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Î¥×¥í¥Õ¥¡¥¤¥ë¤ò͸ú¤Ë¤·¤Þ¤¹¡£¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤è¤ê¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥³¡¼¥É¤ÎÃæ¤ÇºÇ¤âÉÑÈˤ˼¹Ԥµ¤ì¤Æ¤¤¤ë¥»¥¯¥·¥ç¥ó¤òÆÃÄꤷ¡¢ºÇÎɤθú²Ì¤òÆÀ¤ë¤¿¤á¤Î¶É½êŪ¤ÊºÇŬ²½¤ò¹Ô¤¤¤Þ¤¹¡£
Ãí --xarch={v8plusb|v9b}
¤Ë¤è¤ê UltraSPARC III ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸þ¤±¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Ï¡¢UltraSPARC III °Ê³°¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤ÏÆ°ºî¤·¤Þ¤»¤ó¡£UltraSPARC I¡¢UltraSPARC II¡¢¤ª¤è¤Ó UltraSPARC III ¤Î³Æ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¸ß´¹À¤ò°Ý»ý¤·¤¿¤Þ¤ÞÆ°ºî¤¹¤ë¥×¥í¥°¥é¥à¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Ë¤Ï¡¢-xarch={v8plusa|v9a}
¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤Î¼÷Ì¿
¼°¤òɾ²Á¤¹¤ë¾ì¹ç¤Ë¡¢¥³¥ó¥Ñ¥¤¥é¤Ï°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢´Ø¿ô¤¬¸Æ¤Ó½Ð¤µ¤ì¤¿¾ì¹ç¤ä¡¢¥¥ã¥¹¥È¤¬¥¯¥é¥¹¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¤¹¤ë¾ì¹ç¤¬¤½¤¦¤Ç¤¹¡£¸Å¤¤¸À¸ìÄêµÁ¤Ç¤Ï¡¢°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤¬À¸À®¤µ¤ì¤¿¥Ö¥í¥Ã¥¯¤ÎºÇ¸å¤ËÅþ㤹¤ë¤Þ¤Ç¤ÎǤ°Õ¤Î»þÅÀ¤Ç¤³¤Î¤è¤¦¤Ê°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤òÇË´þ¤Ç¤¤Þ¤·¤¿¡£¤·¤«¤·¡¢C++ ɸ½àµ¬³Ê¤Ç¤Ï¡¢°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤¬»²¾È¤Î½é´ü²½¤Ë»ÈÍѤµ¤ì¤Ê¤¤¤«¤®¤ê¡¢¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤¬À¸À®¤µ¤ì¤Æ¤¤¤ë¼°Á´ÂΤκǸå¤Ç¡¢¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òÇË´þ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤ÈÄê¤á¤Æ¤¤¤Þ¤¹¡£
¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢C++ ¥³¥ó¥Ñ¥¤¥é (5.2) ¤Ï¡¢¸Å¤¤¸À¸ìÄêµÁ¤ò¼ÂÁõ¤·¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤¬ºîÀ®¤µ¤ì¤¿¥Ö¥í¥Ã¥¯¤ÎºÇ¸å¤Ç¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤òÇË´þ¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥é¤Ë C++ ɸ½àµ¬³Ê¤Î¾ò·ï¤Ë½¾¤Ã¤Æ°ì»þ¥ª¥Ö¥¸¥§¥¯¥È¤òÇË´þ¤µ¤»¤ë¤Ë¤Ï¡¢¿·¤·¤¤
-features=tmplife
¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£Îã¤È¤·¤Æ¡¢¼¡¤Î¥Ö¥í¥Ã¥¯¤ò¹Í¤¨¤Æ¤ß¤Þ¤·¤ç¤¦¡£
{ foo(ClassA()); bar(ClassB()); some-statement; }¥³¥Þ¥ó¥É¹Ô¤Ç
-features=tmplife
¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¸Æ¤Ó½Ð¤·½ç½ø¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
tmp1=ClassA(); foo(tmp1); tmp1.~ClassA();tmp2=ClassB(); bar(tmp2); tmp2.~ClassB();some-statement;
-features=tmplife
¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢¸Æ¤Ó½Ð¤·½ç½ø¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
tmp1=ClassA(); foo(tmp1);tmp2=ClassB(); bar(tmp2);some-statement;tmp2.~ClassB();tmp1.~ClassA();¤³¤Î¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¡¢¸ß´¹¥â¡¼¥É (
-compat[=4]
) ¤Ç¤Ï»ÈÍѤǤ¤Þ¤»¤ó¡£
-I-
¥ª¥×¥·¥ç¥ó¤Ë¤è¤ë¥Ç¥Õ¥©¥ë¥È¸¡º÷¥Ñ¥¹¤Î̵¸ú²½¿·¤·¤¤
-I-
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤¬¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¸¡º÷»þ¤Ë»ÈÍѤ¹¤ë¥¢¥ë¥´¥ê¥º¥à¤òºÙ¤«¤¯À©¸æ¤Ç¤¤Þ¤¹¡£¤³¤ÎÀá¤Ç¤Ï¡¢¤Þ¤º¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷¥¢¥ë¥´¥ê¥º¥à¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¡¢Â³¤¤¤Æ¤³¤ì¤é¤Î¥¢¥ë¥´¥ê¥º¥à¤ËÂФ¹¤ë-I-
¤Î¸ú²Ì¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£°úÍÑÉä¤Ç°Ï¤Þ¤ì¤¿¥Õ¥¡¥¤¥ë¤Î¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷¥¢¥ë¥´¥ê¥º¥à
#include "foo.h"
¤È¤¤¤¦·Á¼°¤Î (Æó½Å°úÍÑÉ䤬»ÈÍѤµ¤ì¤ë) ¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£
- ¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê (¤Ä¤Þ¤ê¡Ö¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ë¡×¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê)
-I
¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê (¸ºß¤¹¤ë¾ì¹ç)- ¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë C++ ¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¡¢ANSI C ¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤ÓÆüìÌÜŪ¥Õ¥¡¥¤¥ë¤Î³Æ¥Ç¥£¥ì¥¯¥È¥ê
/usr/include
¥Ç¥£¥ì¥¯¥È¥ê»³³ç¸Ì¤Ç°Ï¤Þ¤ì¤¿¥Õ¥¡¥¤¥ë¤Î¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷¥¢¥ë¥´¥ê¥º¥à
#include
<foo.h>
¤È¤¤¤¦·Á¼°¤Î (»³³ç¸Ì¤¬»ÈÍѤµ¤ì¤ë) ¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¾ì¹çÇÉ¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£
-I
¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê (¸ºß¤¹¤ë¾ì¹ç)- ¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë C++ ¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¡¢ANSI C ¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤ÓÆüìÌÜŪ¥Õ¥¡¥¤¥ë¤Î³Æ¥Ç¥£¥ì¥¯¥È¥ê
/usr/include
¥Ç¥£¥ì¥¯¥È¥ê
Ãí - ¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î̾Á°¤¬É¸½à¥Ø¥Ã¥À¡¼¤Î̾Á°¤È°ìÃפ¹¤ë¾ì¹ç¤Ï¡¢¡ØC++ ¥æ¡¼¥¶¡¼¥º¥¬¥¤¥É¡Ù¤ÎÂè 5 ¾Ï¤Î¡Öɸ½à¥Ø¥Ã¥À¡¼¤Î¼ÂÁõ¡×¤ÎÀá¤â»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-I-
¥ª¥×¥·¥ç¥ó¤Ë¤è¤ë¸¡º÷¥¢¥ë¥´¥ê¥º¥à¤ÎÊѹ¹¿·¤·¤¤
-I-
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¤Î¸¡º÷µ¬Â§¤òºÙ¤«¤¯À©¸æ¤Ç¤¤Þ¤¹¡£¥³¥Þ¥ó¥É¹Ô¤Ë-I-
¤¬»ØÄꤵ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¼¡¤Î¤è¤¦¤ËÆ°ºî¤·¤Þ¤¹¡£
-I
»ØÎá¤Ç¥Ç¥£¥ì¥¯¥È¥ê¤¬ÌÀ¼¨Åª¤Ë»ØÄꤵ¤ì¤Ê¤¤¸Â¤ê¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ò¸¡º÷¤·¤Þ¤»¤ó¡£¤³¤Îµ¬Â§¤Ï¡¢#include "foo.h"
¤È¤¤¤¦·Á¼°¤Î¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Ë¤Ä¤¤¤Æ¤âƱÍͤËŬÍѤµ¤ì¤Þ¤¹¡£#include "foo.h"
¤È¤¤¤¦·Á¼°¤Î¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¡¢¼¡¤Î½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£
-I
¥ª¥×¥·¥ç¥ó (-I-
¤ÎÁ°¤È¸å¤ÎξÊý) ¤Ç»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê- ¥³¥ó¥Ñ¥¤¥é¤Ë¤è¤Ã¤ÆÄ󶡤µ¤ì¤ë C++ ¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¡¢ANSI C ¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¡¢¤ª¤è¤ÓÆüìÌÜŪ¥Õ¥¡¥¤¥ë¤Î³Æ¥Ç¥£¥ì¥¯¥È¥ê
/usr/include
¥Ç¥£¥ì¥¯¥È¥ê#include <foo.h>
¤È¤¤¤¦·Á¼°¤Î¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¤Ï¡¢¼¡¤Î½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£¼¡¤ÎÎã¤Ï¡¢
prog.cc
¤Ç¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¤Ë-I-
¤ò»ÈÍѤ·¤¿·ë²Ì¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê (¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î¥Ç¥£¥ì¥¯¥È¥ê) ¤«¤é
#include "foo.h"
¤È¤¤¤¦·Á¼°¤Î¥¤¥ó¥¯¥ë¡¼¥É¥Õ¥¡¥¤¥ë¤ò¸¡º÷¤¹¤ë¥Ç¥Õ¥©¥ë¥È¤ÎÆ°ºî¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£inc/a.h
Æâ¤Î#include "c.h"
ʸ¤ò½èÍý¤¹¤ë¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ïinc
¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤«¤éc.h
¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Þ¤¹¡£prog.c
Æâ¤Î#include "c.h"
ʸ¤ò½èÍý¤¹¤ë¾ì¹ç¤Ï¡¢¥×¥í¥×¥í¥»¥Ã¥µ¤Ï¡¢prog.c
¤ò´Þ¤ó¤Ç¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤«¤éc.h
¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Þ¤¹¡£-H
¥ª¥×¥·¥ç¥ó¤Ï¡¢¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤ë¥Õ¥¡¥¤¥ë¤Î¥Ñ¥¹¤ò½ÐÎϤ¹¤ë¤è¤¦¤Ë¥³¥ó¥Ñ¥¤¥é¤Ë»Ø¼¨¤·¤Þ¤¹¡£
example%CC -c -Iinc -H prog.cc
inc/a.hinc/c.hinc/b.hinc/c.hc.h¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢
-I-
¥ª¥×¥·¥ç¥ó¤Î¸ú²Ì¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥é¤Ï¡¢#include "foo.h"
¤È¤¤¤¦·Á¼°¤Îʸ¤ò½èÍý¤¹¤ë¾ì¹ç¤Ë¥¤¥ó¥¯¥ë¡¼¥É¤·¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤òÂè°ì¸õÊä¤È¤·¤Æ¸¡º÷¤·¤Þ¤»¤ó¡£Âå¤ï¤ê¤Ë¡¢-I
¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤵ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê¤ò¥³¥Þ¥ó¥É¹Ô¤Ë¸½¤ì¤ë½ç¤Ë¸¡º÷¤·¤Þ¤¹¡£inc/a.h
Æâ¤Î#include "c.h"
ʸ¤ò½èÍý¤¹¤ë¾ì¹ç¤Ï¡¢inc/c.h
¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤Ç¤Ï¤Ê¤¯./c.h
¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¯¥ë¡¼¥É¤·¤Þ¤¹¡£
example%CC -c -I. -I- -Iinc -H prog.cc
inc/a.h./c.hinc/b.hinc/c.h./c.h¾ÜºÙ¤Ï¡¢
CC
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ë´Þ¤Þ¤ì¤ë-I-
¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£C++ ¤ËÂФ¹¤ë¶è´Ö±é»»¥µ¥Ý¡¼¥È
(SPARC ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à) Sun WorkShopTM 6 update 1 C++ Compilers (5.2) ¤Ï¡¢C++ ¶è´Ö±é»»¥é¥¤¥Ö¥é¥ê¤ËÂФ¹¤ë C++ ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢¤³¤Î¥Þ¥Ë¥å¥¢¥ë¤Î ¡Ö¶è´Ö±é»»¡×¤È¡¢
http://docs.sun.com
(ForteTM Developer 6 update 1/Sun WorkShop 6 update 1 Collection) ¤Ë·ÇºÜ¤µ¤ì¤Æ¤¤¤ë¡ØC++ Interval Arithmetic Programming Reference¡Ù¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£´ØÏ¢¤¹¤ë¥³¥ó¥Ñ¥¤¥é¥ª¥×¥·¥ç¥ó¤Î¾ÜºÙ¤Ï¡¢
CC
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ë´Þ¤Þ¤ì¤ë¼¡¤Î¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
-xia
-library=[no%]interval
Ãí - C++ ¶è´Ö±é»»¥é¥¤¥Ö¥é¥ê¤Ï¡¢Fortran ¥³¥ó¥Ñ¥¤¥é¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¶è´Ö±é»»¤È¸ß´¹À¤¬¤¢¤ê¤Þ¤¹¡£
Ê£¿ô¸À¸ì¤Î¥ê¥ó¥¯
¿·¤·¤¤
-xlang
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢Fortran ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤È C++ ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò¥ê¥ó¥¯¤Ç¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢C++ ¤Î¼ç¥×¥í¥°¥é¥à¤È Fortran ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò¥ê¥ó¥¯¤Ç¤¤Þ¤¹¡£Ê£¿ô¤Î¸À¸ì¤òƱ»þ¤Ë¥ê¥ó¥¯¤¹¤ë¾ì¹ç¤Ë»ÈÍѤ¹¤ë¥É¥é¥¤¥Ð¤ò·èÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¸À¸ì³¬Áؤò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
Fortran 95¡¢Fortran 77¡¢¤ª¤è¤Ó C++ ¤Î¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò°ì½ï¤Ë¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢ºÇ¾å°Ì¤Î¸À¸ì¤Î¥É¥é¥¤¥Ð¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢C++ ¤È Fortran 95 ¤Î³Æ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î C++ ¥³¥ó¥Ñ¥¤¥é¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
example%CC -xlang=f95
...Fortran 95 ¤È Fortran 77 ¤Î³Æ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ë Fortran 95 ¥É¥é¥¤¥Ð¤ò»ÈÍѤ·¤Þ¤¹¡£
example%f95 -xlang=f77
...¾ÜºÙ¤Ï¡¢
CC
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ë´Þ¤Þ¤ì¤ë°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£3 ʸ»úɽµÇ§¼±¤Î͸ú²½¤È̵¸ú²½
-xtrigraphs
¥ª¥×¥·¥ç¥ó¤Ï¡¢ISO/ANSI C ɸ½àµ¬³Ê¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¥³¥ó¥Ñ¥¤¥é¤¬ 3 ʸ»úɽµ¥·¡¼¥±¥ó¥¹¤òǧ¼±¤¹¤ë¤«¤É¤¦¤«¤ò·èÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢¥³¥ó¥Ñ¥¤¥é¤Ï
-xtrigraphs=yes
¤È²¾Äꤷ¡¢¥³¥ó¥Ñ¥¤¥ëñ°ÌÁ´ÂΤËÅϤäƤ¹¤Ù¤Æ¤Î 3 ʸ»úɽµ¥·¡¼¥±¥ó¥¹¤òǧ¼±¤·¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥é¤¬ 3 ʸ»úɽµ¥·¡¼¥±¥ó¥¹¤È¤·¤Æ²ò¼á¤·¤Æ¤¤¤ëµ¿ÌäÉä (?) ¤ò´Þ¤à¥ê¥Æ¥é¥ëʸ»úÎ󤬥½¡¼¥¹¥³¡¼¥É¤Ë¸ºß¤¹¤ë¾ì¹ç¡¢
-xtrigraph=no
¥µ¥Ö¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ 3 ʸ»úɽµ¥·¡¼¥±¥ó¥¹¤Îǧ¼±¤ò̵¸ú¤Ë¤Ç¤¤Þ¤¹¡£-xtrigraphs=no
¥ª¥×¥·¥ç¥ó¤Ï¡¢¥³¥ó¥Ñ¥¤¥ëñ°ÌÁ´ÂΤËÅϤäƤ¹¤Ù¤Æ¤Î 3 ʸ»úɽµ¤Îǧ¼±¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£¼¡¤Î
trigraphs_demo.cc
¤È¤¤¤¦¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ÎÎã¤ò¹Í¤¨¤Æ¤ß¤Þ¤·¤ç¤¦¡£
#include <stdio.h>int main (){(void) printf("(\?\?) in a string appears as (??)\n");return 0;}
-xtrigraphs=yes
¤ò»ØÄꤷ¤Æ¤³¤Î¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¡¢¼¡¤Î¤è¤¦¤Ë½ÐÎϤµ¤ì¤Þ¤¹¡£
example%CC
-xtrigraphs=yes
trigraphs_demo.cc
example%a.out
(??) in a string appears as (]
-xtrigraphs=no
¤ò»ØÄꤷ¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤¿¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë½ÐÎϤµ¤ì¤Þ¤¹¡£
example%CC
-xtrigraphs=no
trigraphs_demo.cc
example%a.out
(??) in a string appears as (??)
-xtrigraphs
¥ª¥×¥·¥ç¥ó¤Î»ÈÍѤξܺ٤ϡ¢CC
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£3 ʸ»úɽµ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¡ØC ¥æ¡¼¥¶¡¼¥º¥¬¥¤¥É¡Ù¤Î ANSI/ISO C ¤Ø¤Î°Ü¹Ô¤Ë´Ø¤¹¤ë¾Ï¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¥ê¥ó¥«¡¼¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Î¥Õ¥£¥ë¥¿½èÍý
¿·¤·¤¤
-filt
¥ª¥×¥·¥ç¥ó¤Ï¡¢Ä̾CC
¤¬¥ê¥ó¥«¡¼¤«¤é¤Î¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ËÂФ·¤Æ¹Ô¤¦¥Õ¥£¥ë¥¿½èÍý¤òÍ޻ߤ·¤Þ¤¹¡£
-filt=no%names
¤Ï¡¢C++ ¤ÎÉä¹æ²½¤µ¤ì¤¿ C++ ¥ê¥ó¥«¡¼Ì¾¤òÉü¹æ²½¤·¤Þ¤»¤ó¡£-filt=no%returns
¤Ï¡¢´Ø¿ô¤ÎÌá¤ê·¿¤òÉü¹æ²½¤òÍ޻ߤ·¤Þ¤»¤ó¡£¤³¤ì¤Ë¤è¤ê´Ø¿ô̾¤ò¤è¤ê´Êñ¤ËÆÃÄê¤Ç¤¤Þ¤¹¡£¤¿¤À¤·¡¢²¾ÁÛ´Ø¿ô¤Î¾ì¹ç¡¢´Ø¿ô̾¤ÏƱ¤¸¤ÇÌá¤ê·¿¤Î¤ß¤¬°Û¤Ê¤ë´Ø¿ô¤¬¤¢¤ë¤¿¤á¡¢Ãí°Õ¤¬É¬ÍפǤ¹¡£-filt=no%errors
¤Ï¡¢¥ê¥ó¥«¡¼¤«¤é¤Î¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Ë´Ø¤¹¤ë C++ ¤ÎÀâÌÀ¤òɽ¼¨¤·¤Þ¤»¤ó¡£ÀâÌÀ¤òÍ޻ߤ¹¤ë¤È¡¢¥ê¥ó¥«¡¼¤Î¿ÇÃǤ¬Ê̤Υġ¼¥ë¤ËľÀÜÅϤµ¤ì¤ë¾ì¹ç¤ËÌòΩ¤Á¤Þ¤¹¡£¼¡¤ÎÎã¤Ï¡¢¼¡¤Î¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¤Ë
-filt
¤ò»ÈÍѤ¹¤ë¸ú²Ì¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
// filt_demo.ccclass type {public:virtual ~type(); // ²¿¤âÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó};int main(){type t;}¤³¤Î¥³¡¼¥É¤ò
-filt
¥ª¥×¥·¥ç¥ó¤Ê¤·¤Ç¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï-filt=names,returns,errors
¤È²¾Äꤷ¡¢°Ê²¼¤Î¤è¤¦¤Êɸ½à¤Î½ÐÎϤòɽ¼¨¤·¤Þ¤¹¡£
Ãí°Õ - ¾åµ¤Î¥Ò¥ó¥È¤Ï¡¢ÆüËܸì´Ä¶¤Ç¤Ïµ»½ÑŪÀ©¸Â¤Î¤¿¤á½ÐÎϤµ¤ì¤Þ¤»¤ó¡£
¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢Éä¹æ²½¤µ¤ì¤¿ C++ ¥ê¥ó¥«¡¼Ì¾¤ÎÉü¹æ²½¤òÍ޻ߤ¹¤ë¤È¤È¤â¤Ë¡¢¥ê¥ó¥«¡¼¥¨¥é¡¼¤Î C++ ÀâÌÀ¤òÍ޻ߤ·¤Þ¤¹¡£
¾ÜºÙ¤Ï¡¢
CC
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¶¦Í
libCstd
Sun WorkShop 6 update 1 Compilers C++ (5.2) ¤Ë¤Ï¡¢
libCstd
¥é¥¤¥Ö¥é¥ê¤Î¶¦Í¥Ð¡¼¥¸¥ç¥ó¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
libCstd
¤Î¶¦Í¥Ð¡¼¥¸¥ç¥ó¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë¤È¥ê¥ó¥¯¤òÊÌ¡¹¤Ë¹Ô¤Ã¤Æ¤¯¤À¤µ¤¤¡£¤½¤·¤Æ¡¢¥ê¥ó¥¯»þ¤Ë¤Ï¡¢¼¡¤ÎÎã¤Ë¼¨¤¹¤è¤¦¤Ë-library=no%Cstd
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥Þ¥ó¥É¹Ô¤Ë¶¦Í¥é¥¤¥Ö¥é¥ê̾¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
example%CC -library=no%Cstd *.o
\-o myprog /opt/SUNWspro/WS6U1/lib/libCstd.so.1
Sun WorkShop 6 update 1 ¤¬
/opt
°Ê³°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ë¼ÂºÝ¤Î¥Ñ¥¹¤ò¤ª¿Ò¤Í¤¯¤À¤µ¤¤¡£
Ãí - C++ ¥½¡¼¥¹¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¥³¥Þ¥ó¥ÉÆâ¤Ë-library=no%Cstd
¤ò»ÈÍѤ¹¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï C++ ¤Îɸ½à¥Ø¥Ã¥À¡¼¤ò¸¡º÷¤Ç¤¤Þ¤»¤ó¡£
¶¦Í
libiostream
Sun WorkShop 6 update 1 C++ Compilers (5.2) ¤Ë¤Ï¡¢½¾ÍèÊý¼°¤Î iostream ¥é¥¤¥Ö¥é¥ê¤Î¶¦Í¥Ð¡¼¥¸¥ç¥ó¡¢
libiostream
¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¶¦Í¥Ð¡¼¥¸¥ç¥ó
libiostream
¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¥³¥ó¥Ñ¥¤¥ë¤È¥ê¥ó¥¯¤òÊÌ¡¹¤Ë¹Ô¤Ã¤Æ¤¯¤À¤µ¤¤¡£¤½¤·¤Æ¥ê¥ó¥¯»þ¤Ë¤Ï¡¢¼¡¤ÎÎã¤Ë¼¨¤¹¤è¤¦¤Ë¥³¥Þ¥ó¥É¹Ô¤Ë¶¦Í¥é¥¤¥Ö¥é¥ê̾¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¡¢-library=iostream
¥ª¥×¥·¥ç¥ó¤Ï»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
example%CC *.o -o myprog
\/opt/SUNWspro/WS6U1/lib/lib/libiostream.so.1
Sun WorkShop 6 update 1 ¤¬
/opt
°Ê³°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ë¼ÂºÝ¤Î¥Ñ¥¹¤ò¤ª¿Ò¤Í¤¯¤À¤µ¤¤¡£
Ãí - ¥×¥í¥°¥é¥à¹½Ãۤˤª¤±¤ë³Æ¥³¥ó¥Ñ¥¤¥ë¤Ç¤Ï-library=iostream
¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¥ê¥ó¥¯»þ¤Ë¤Ï-library=iostream
¤ò»ÈÍѤ·¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
ºÇŬ²½¥×¥é¥°¥Þ
¥ª¥×¥Æ¥£¥Þ¥¤¥¶¤¬¤è¤êÍ¥¤ì¤¿¥³¡¼¥É¤òÀ¸À®¤¹¤ë¤è¤¦¤Ë¡¢°Ê²¼¤Î¿·¤·¤¤¥×¥é¥°¥Þ¤ò»ÈÍѤǤ¤Þ¤¹¡£
¤É¤Á¤é¤Î¥×¥é¥°¥Þ¤â¡¢name ¤Ï¤½¤Î̾Á°¤ò»ÈÍѤ¹¤ë¡¢Ä¾Á°¤ËÀë¸À¤µ¤ì¤Æ¤¤¤ë´Ø¿ô¤ò¼¨¤·¤Þ¤¹¡£
¤³¤ì¤é¤Î¥×¥é¥°¥Þ¤Ï¡¢¤½¤ì¤é¤¬»²¾È¤¹¤ë´Ø¿ô¤Îľ¸å¤ËÃÖ¤¤¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢¼¡¤ÎºÇ½é¤Î¥³¡¼¥ÉÎã¤Ï
no_side_effects
¥×¥é¥°¥Þ¤ÎÀµ¤·¤¤ÇÛÃÖ¤ò¼¨¤·¤Æ¤ª¤ê¡¢2 ¤ÄÌܤÎÎã¤Ï¸í¤Ã¤¿ÇÛÃÖ¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
class good_example {void no_op();#pragma no_side_effects (no_op) // Àµ¤·¤¤ÇÛÃÖ}class bad_example{void no_op();}#pragma no_side_effects (no_op) // ¸í¤Ã¤¿ÇÛÃÖ³ÈÄ¥»Ò
.c++
¤Îǧ¼±¥³¥Þ¥ó¥É¹Ô¾å¤Ë¥Õ¥¡¥¤¥ë̾¤¬½Ð¸½¤¹¤ë¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤ÏÀÜÈø¼¤ò¸«¤Æ¤½¤Î¥Õ¥¡¥¤¥ë¤ò¤É¤Î¤è¤¦¤Ë½èÍý¤¹¤ë¤«¤ò·èÄꤷ¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢
.o
¤Ç½ª¤ï¤Ã¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î¾ì¹ç¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤È¤·¤Æ½èÍý¤·¤Þ¤¹¡£Sun WorkShop 6 update 1 C++ Compilers (5.2) ¤Ï¡¢°Ê²¼¤Î³ÈÄ¥»Ò¤ò»ý¤Ä¥Õ¥¡¥¤¥ë¤ò C++ ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤È¤·¤Æǧ¼±¤·¤Þ¤¹¡£ÀèÆɤßÀøºß´ü´Ö¤Î»ØÄê»Ò
(SPARC ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à) Â絬ÌÏ¥Þ¥ë¥Á¥×¥í¥»¥Ã¥µ¾å¤Ç·×»»Î̤襤¥³¡¼¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
-xprefetch
¤Î¿·¤·¤¤¥µ¥Ö¥ª¥×¥·¥ç¥ólatx:
factor ¤ò»ÈÍѤ¹¤ë¤ÈÊØÍø¤Ê¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¡¢»ØÄꤵ¤ì¤¿·¸¿ô¤Ë½¾¤Ã¤ÆÀèÆɤߤ«¤é´ØÏ¢¤¹¤ë¥í¡¼¥É¤Þ¤¿¤Ï¥¹¥È¥¢¤Ë»ê¤ë¤Þ¤Ç¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÂÔ¤Á»þ´Ö¤òÄ´À°¤¹¤ë¤è¤¦¤Ë¥³¡¼¥É¥¸¥§¥Í¥ì¡¼¥¿¤Ë»Ø¼¨¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢
CC
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Fortran ¥³¥ó¥Ñ¥¤¥é
Sun WorkShop 6 update 1 ¤Ç¤Ï¡¢Fortran 95 ¥³¥ó¥Ñ¥¤¥é¤È Fortran 77 ¥³¥ó¥Ñ¥¤¥é¤ÎξÊý¤¬¥ê¥ê¡¼¥¹¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
ɽ 1-3 ¤Ï¡¢Sun WorkShop 6 update 1 ¥ê¥ê¡¼¥¹¤Ç»ÈÍѤǤ¤ë¿·µ¡Ç½¤Î¤¦¤Á Fortran 95 ¥³¥ó¥Ñ¥¤¥é¤È Fortran 77 ¥³¥ó¥Ñ¥¤¥é¤ÎξÊý¤Ë¶¦Ä̤¹¤ëµ¡Ç½¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤Îµ¡Ç½¤Î°ìÉô¤Ï¡¢É½¤Î¼¡¤ÎÀá¤Ç¤µ¤é¤Ë¾Ü¤·¤¯ÀâÌÀ¤·¤Æ¤¤¤Þ¤¹¡£
ɽ 1-3 Fortran ¥³¥ó¥Ñ¥¤¥é¤Î¿·µ¡Ç½ UltraSPARC III ¥×¥í¥»¥Ã¥µ¤Î¥µ¥Ý¡¼¥È -xtarget
-xchip
¿·¥ê¥ê¡¼¥¹¤Î -xtarget
¤ª¤è¤Ó-xchip
¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢ultra3
¤ò»ØÄê¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£UltraSPARC III ¤ÇºÇÎɤΥѥե©¡¼¥Þ¥ó¥¹¤òÆÀ¤ë¤¿¤á¤Ë¿ä¾©¤µ¤ì¤ë»ÈÍѥե饰¤Ë¤Ä¤¤¤Æ¤Ï¡¢¼¡¤ÎÀá¤ÎÀâÌÀ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£int2 ÁȤ߹þ¤ß¤Î¥µ¥Ý¡¼¥È int2
ÁȤ߹þ¤ß¤Ï¡¢¸Å¤¤ Fortran 77 ¥×¥í¥°¥é¥à¤È¤Î¸ß´¹À¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¥Ç¡¼¥¿°ú¿ô var ¤ò 2 ¥Ð¥¤¥ÈÀ°¿ô¤ËÊÑ´¹¤¹¤ë¾å¤Ç¿ä¾©¤µ¤ì¤ë Fortran 95 ¤Îint
(var,2
) ÁȤ߹þ¤ß¤ÈƱ¤¸µ¡Ç½¤ò»ý¤Á¤Þ¤¹¡£-fast ¥ª¥×¥·¥ç¥ó¤Î³ÈÄ¥ -fast
¿·¥ê¥ê¡¼¥¹¤Î -fast
¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢-xprefetch
¥ª¥×¥·¥ç¥ó¤¬´Þ¤Þ¤ì¤Þ¤¹¡£ÀèÆɤßÀøºß´ü´Ö¤Î»ØÄê»Ò -xprefetch=...,latx:
factor¤³¤Î¿·¤·¤¤¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¡¢¥Ç¡¼¥¿¤òÀèÆɤߤ¹¤ë¤¿¤á¤Ë¥³¥ó¥Ñ¥¤¥é¤¬À¸À®¤¹¤ëÌ¿Îá¤È¡¢¤½¤Î¸å»ÈÍѤ¹¤ë¥í¡¼¥É¤Þ¤¿¤Ï¥¹¥È¥¢Ì¿Îá¤Î¥Ç¡¼¥¿¤¬¤É¤ì¤¯¤é¤¤Î¥¤ì¤Æ¤¤¤ë¤«¤ò»þ´ÖŪ¤Ë»ØÄê¤Ç¤¤Þ¤¹¡£ Ê£¿ô¸À¸ì¤Î¥ê¥ó¥¯ -xlang
¿·¤·¤¤ -xlang
¥ª¥×¥·¥ç¥ó¤Ï¡¢Fortran ¤Î¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤È C++ ¤Î¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤¬º®ºß¤·¤¿¥ê¥ó¥¯¤ò¹Ô¤¤¤Þ¤¹¡£
UltraSPARC III ¥×¥í¥»¥Ã¥µ¤Î¥µ¥Ý¡¼¥È
UltraSPARC III ¥×¥í¥»¥Ã¥µ¾å¤Ç¥×¥í¥°¥é¥à¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤Æ¼Â¹Ô¤¹¤ë¾ì¹ç¤ËºÇÎɤΥѥե©¡¼¥Þ¥ó¥¹¤òÆÀ¤ë¤Ë¤Ï¡¢°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤Æ¤¯¤À¤µ¤¤¡£
-fast -xcrossfile -xprofile={collect:|use:}
- ¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤ò¹Ô¤¦ (UltraSPARC III °Ê³°¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤¬¡¢UltraSPARC III ¥·¥¹¥Æ¥à¤ÇÆ°ºî¤¹¤ë¤è¤¦¤Ë¥ª¥Ö¥¸¥§¥¯¥È¥Ð¥¤¥Ê¥ê¤òÀ¸À®¤¹¤ë)¤Ë¤Ï¡¢Àµ¤·¤¤¥¥ã¥Ã¥·¥å¥µ¥¤¥º¤ÈºÇŬ²½Êý¿Ë¤¬ÀßÄꤵ¤ì¤ë¤è¤¦¤Ë°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£
- 32 ¥Ó¥Ã¥È¥³¡¼¥É¤ÎÀ¸À®¤Ë¤Ï
-xarch=v8plusb
¡¢64 ¥Ó¥Ã¥È¥³¡¼¥É¤ÎÀ¸À®¤Ë¤Ïv9b
¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£Èó¾ï¤ËÂ礤ʥǡ¼¥¿¥Õ¥¡¥¤¥ë¤Ë¥¢¥¯¥»¥¹¤¹¤ë¥×¥í¥°¥é¥à¤Î¾ì¹ç¡¢64 ¥Ó¥Ã¥È¥³¡¼¥É¤ÎÊý¤¬Í¥¤ì¤¿¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤òÆÀ¤é¤ì¤Þ¤¹¡£¤·¤«¤·¡¢-xarch=v9b
¤Ï 64 ¥Ó¥Ã¥È¥³¡¼¥É¤òÀ¸À®¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¾ì¹ç¤À¤±¤Ë»ÈÍѤ¹¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹¡£¾õ¶·¤Ë¤è¤Ã¤Æ¤Ï¡¢-xarch=v9b
¤ò»ÈÍѤ·¤¿¤¿¤á¤Ë¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤¬Äã²¼¤¹¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£-fast
¥ª¥×¥·¥ç¥ó¤Ï¡¢¼Â¹Ô®ÅÙ¤ò½Å»ë¤¹¤ëºÇŬ²½¤ò͸ú¤Ë¤·¡¢ºÇŬ²½¥ì¥Ù¥ë¤ò-xO5
¤Ë°ú¤¾å¤²¤Þ¤¹¡£-fast
¤ò»ÈÍѤ¹¤ë¤È¡¢²Äǽ¤Ê¾ì¹ç¤Ë¤è¤ê¹â®¤Ê»»½Ñ±é»»¤òÂåÍѤǤ¤ë¤è¤¦¤Ë¤Ê¤ë¤¿¤á¡¢-fsimple=2
¤ò»ÈÍѤ·¤Þ¤¹¡£¤·¤«¤·¤³¤Î¾ì¹ç¡¢Â¿¾¯¤Î¸í¤ê¤¬È¯À¸¤¹¤ë²ÄǽÀ¤¬¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£-xcrossfile
¤¬»ØÄꤵ¤ì¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥é¤Ï¥³¥Þ¥ó¥É¹Ô¤Ë»ØÄꤵ¤ì¤¿¤¹¤Ù¤Æ¤Î¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ËºÇŬ²½ (Ãæ´Ö¼ê³¤Åª¤ÊºÇŬ²½¤ò´Þ¤à) ¤òŬÍѤ·¤Þ¤¹¡£-xprofile={collect:|use:}
¤Ï¡¢¥×¥í¥°¥é¥à¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤Î¥×¥í¥Õ¥¡¥¤¥ë¤ò͸ú¤Ë¤·¤Þ¤¹¡£¥×¥í¥Õ¥¡¥¤¥ë¤Ë¤è¤ê¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¥³¡¼¥É¤ÎÃæ¤ÇºÇ¤âÉÑÈˤ˼¹Ԥµ¤ì¤Æ¤¤¤ë¥»¥¯¥·¥ç¥ó¤òÆÃÄꤷ¡¢ºÇÎɤθú²Ì¤òÆÀ¤ë¤¿¤á¤Î¶É½êŪ¤ÊºÇŬ²½¤ò¹Ô¤¤¤Þ¤¹¡£
Ãí --xarch={v8plusb|v9b}
¤ò»ØÄꤷ¤Æ UltraSPARC III ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¸þ¤±¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Ï¡¢UltraSPARC III °Ê³°¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤ÏÆ°ºî¤·¤Þ¤»¤ó¡£UltraSPARC I¡¢UltraSPARC II¡¢¤ª¤è¤Ó UltraSPARC III ¤Î³Æ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¸ß´¹À¤ò°Ý»ý¤·¤ÆÆ°ºî¤¹¤ë¥×¥í¥°¥é¥à¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤Ë¤Ï¡¢-xarch={v8plusa|v9a}
¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
int2
ÁȤ߹þ¤ß¤Î¥µ¥Ý¡¼¥È¿·¥ê¥ê¡¼¥¹¤Î Fortran 95 ¥³¥ó¥Ñ¥¤¥é¤È Fortran 77 ¥³¥ó¥Ñ¥¤¥é¤Ï¡¢2 ¥Ð¥¤¥ÈÀ°¿ô¤Ø¤Î¥Ç¡¼¥¿·¿ÊÑ´¹¤Ë
int2
ÁȤ߹þ¤ß¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£int2
¤ÎÁȤ߹þ¤ß¤È¤·¤Æ¤Î»ÈÍѤϡ¢Â¿¤¯¤Î¸Å¤¤ Fortran 77 ¥³¡¼¥É¤Ç¤ÏM=int2(J)
¤È¤¤¤¦½ñ¼°¤Ç½Ð¸½¤·¤Æ¤¤¤Þ¤¹¡£Fortran 95 ¤Ç¤Ï¡¢
M=int(J,2)
¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¤ª´«¤á¤·¤Þ¤¹¡£
-fast
¥ª¥×¥·¥ç¥ó¤Î³ÈÄ¥
-fast
¥ª¥×¥·¥ç¥ó¤Ë´Þ¤á¤é¤ì¤ë¥ª¥×¥·¥ç¥ó¤Î°ìÍ÷¤Ë-xprefetch
¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤·¤¿¡£¤³¤ì¤Ë¤è¤ê¡¢¥³¥ó¥Ñ¥¤¥é¤ÏÀèÆɤ߻ØÎá¤òÀïάŪ¤ËÀ¸À®¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£-xprefetch
¤ò»ÈÍѤ¹¤ë¤È¡¢¥Ç¡¼¥¿½èÍý¥ë¡¼¥×¤ò»ý¤Ä¥³¡¼¥É¤Ç¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò¤«¤Ê¤ê¹â¤á¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£UltraSPARC III ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤ÎÀèÆɤߵ¡¹½¤Ï¡¢UltraSPARC II ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç»ÈÍѤµ¤ì¤¿µ¡¹½¤è¤ê¤â¤Ï¤ë¤«¤Ë²þÎɤµ¤ì¤Æ¤¤¤Þ¤¹¡£ÀèÆɤßÀøºß´ü´Ö¤Î»ØÄê»Ò
(SPARC ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à) Â絬ÌÏ¥Þ¥ë¥Á¥×¥í¥»¥Ã¥µ¾å¤Ç·×»»Î̤襤¥³¡¼¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
-xprefetch
¤Î¿·¤·¤¤¥µ¥Ö¥ª¥×¥·¥ç¥ólatx:
factor ¤ò»ÈÍѤ¹¤ë¤ÈÊØÍø¤Ê¾ì¹ç¤¬¤¢¤ê¤Þ¤¹¡£¤³¤Î¥µ¥Ö¥ª¥×¥·¥ç¥ó¤Ï¡¢»ØÄꤵ¤ì¤¿·¸¿ô¤Ë½¾¤Ã¤ÆÀèÆɤߤ«¤é´ØÏ¢¤¹¤ë¥í¡¼¥É¤Þ¤¿¤Ï¥¹¥È¥¢¤Ë»ê¤ë¤Þ¤Ç¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÂÔ¤Á»þ´Ö¤òÄ´À°¤¹¤ë¤è¤¦¤Ë¥³¡¼¥É¥¸¥§¥Í¥ì¡¼¥¿¤Ë»Ø¼¨¤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢
f77
(1) ¤Èf95
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£Ê£¿ô¸À¸ì¤Î¥ê¥ó¥¯
¿·¤·¤¤
-xlang
¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢Fortran ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤È C++ ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò¥ê¥ó¥¯¤Ç¤¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢Fortran ¤Î¼ç¥×¥í¥°¥é¥à¤ò C++ ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤Ë¥ê¥ó¥¯¤Ç¤¤Þ¤¹¡£Ê£¿ô¤Î¸À¸ì¤òƱ»þ¤Ë¥ê¥ó¥¯¤¹¤ë¾ì¹ç¤Ë»ÈÍѤ¹¤ë¥É¥é¥¤¥Ð¤ò·èÄꤹ¤ë¤Ë¤Ï¡¢¼¡¤Î¸À¸ì³¬Áؤò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£
Fortran 95¡¢Fortran 77¡¢¤ª¤è¤Ó C++ ¤Î¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò°ì½ï¤Ë¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢ºÇ¾å°Ì¤Î¸À¸ì¤Î¥É¥é¥¤¥Ð¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢C++ ¤È Fortran 95 ¤Î³Æ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î C++ ¥³¥ó¥Ñ¥¤¥é¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹¡£
example%CC -xlang=f95
...Fortran 95 ¤È Fortran 77 ¤Î³Æ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤ò¥ê¥ó¥¯¤¹¤ë¤Ë¤Ï¡¢¼¡¤Î¤è¤¦¤Ë Fortran 95 ¥É¥é¥¤¥Ð¤ò»ÈÍѤ·¤Þ¤¹¡£
example%f95 -xlang=f77
...¶è´Ö±é»»
ɽ 1-4 ¤Ï¡¢Sun WorkShop 6 update 1 ¥ê¥ê¡¼¥¹¤Î¶è´Ö±é»»¤Ç»ÈÍѤǤ¤ë¿·µ¡Ç½¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
ɽ 1-4 ¶è´Ö±é»»¤Î¿·µ¡Ç½ C++ ¤ËÂФ¹¤ë¶è´Ö±é»»¥µ¥Ý¡¼¥È (SPARC ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à) ¤³¤Î¥ê¥ê¡¼¥¹¤Î C++ ¥³¥ó¥Ñ¥¤¥é¤Ï¡¢¶è´Ö±é»»¥é¥¤¥Ö¥é¥ê¤ËÂФ¹¤ë C++ ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤·¤Þ¤¹¡£ ¿·¤·¤¤ f95 INTERVAL ÁȤ߹þ¤ß±é»»»Ò¤È´Ø¿ô f95
¶è´Ö±é»»¤Ç¤Ï¡¢°Í¸·¿¤Î¸º»»±é»»»Ò¡¢Àѽ¸¹ç´Ø¿ô¤Ë¤è¤ë½ü»»¡¢¤ª¤è¤ÓÈÆÍÑŪ¤ÊÍð¿ôÀ¸À®¥µ¥Ö¥ë¡¼¥Á¥óRANDOM_NUMBER
¤Î¶è´Ö¥Ð¡¼¥¸¥ç¥ó¤ËÂФ¹¤ë¥µ¥Ý¡¼¥È¤¬Äɲ䵤ì¤Æ¤¤¤Þ¤¹¡£
C++ ¤ËÂФ¹¤ë¶è´Ö±é»»¥µ¥Ý¡¼¥È
Sun WorkShop 6 update 1 ¥ê¥ê¡¼¥¹¤Ë¤Ï¡¢Fortran 95 ¶è´Ö±é»»¤Ë´Þ¤Þ¤ì¤ë¶è´Ö´Ø¿ô¤È¶è´Ö±é»»»Ò¤Î C++ ¥Ð¡¼¥¸¥ç¥ó¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£C++ ¶è´Ö±é»»¥é¥¤¥Ö¥é¥ê¤Î¾ÜºÙ¤Ï¡¢
http://docs.sun.com
(ForteTM Developer 6 update 1/Sun WorkShop 6 update 1 Collection) ¤Ë·ÇºÜ¤µ¤ì¤Æ¤¤¤ë¡ØC++ Interval Arithmetic Programming Reference¡Ù¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£C++ ¤Î¶è´Ö±é»»¥µ¥Ý¡¼¥È¤Ï¡¢C++ ¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤È 3 ¤Ä¤Î¶è´Ö¥¯¥é¥¹ (float¡¢double¡¢¤ª¤è¤Ó long double ¤Ë¤½¤ì¤¾¤ì 1 ¤Ä) ¤òÄ󶡤¹¤ë¥é¥¤¥Ö¥é¥ê¤òÄ󶡤·¤Þ¤¹¡£¶è´Ö¥¯¥é¥¹¤Ë¤Ï¼¡¤Î¤â¤Î¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
- ÊĤ¸¤¿¿ô³ØŪ¥·¥¹¥Æ¥à¤ò·ÁÀ®¤¹¤ë¶è´Ö»»½Ñ±é»»¤È¿ô³Ø´Ø¿ô¡£¤³¤ì¤Ï¡¢±é»»»Ò¤È¥ª¥Ú¥é¥ó¥É¤Î¤¢¤é¤æ¤ëÁȤ߹ç¤ï¤» (¥¼¥í¤ª¤è¤Ó̵¸Â¤¬´Ø·¸¤¹¤ë¥¼¥í½ü»»¤Ê¤É¤ÎÉÔ³ÎÄê¤Ê·Á¼°¤ò´Þ¤à) ¤ËÂФ·¤Æ͸ú¤Ê·ë²Ì¤¬À¸À®¤µ¤ì¤ë¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡£
- ¼¡¤Ë¼¨¤¹ 3 ¼ïÎà¤Î¶è´Ö´Ø·¸¤ò¼¨¤¹´Ø¿ô:
intersect
¤äinterval_hull
¤Ê¤É¤Î¶è´Ö¸Çͤδؿôinf
¡¢sup
¡¢wid
¤Ê¤É¤Î¶è´Ö¸Çͤδؿô- ¶è´ÖÆþ½ÐÎÏ (ñ°ì¿ôÃͤÎÆþ½ÐÎϤʤÉ)
ɸ½à¥â¡¼¥É¤Î¥³¥ó¥Ñ¥¤¥ë¤Î¾ì¹ç¡¢¥é¥¤¥Ö¥é¥êÆâ¤Î¥·¥ó¥Ü¥ë¤Ï¤¹¤Ù¤Æ̾Á°¶õ´Ö
SUNW_interval
¤Ë¤¢¤ê¤Þ¤¹¡£¥³¥ó¥Ñ¥¤¥ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢¼¡¤ÎÍ×ÁǤ«¤é¹½À®¤µ¤ì¤Þ¤¹¡£
C++ ¶è´Ö±é»»µ¡Ç½¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¥³¡¼¥É¤Ë¼¡¤Î¥Ø¥Ã¥À¡¼¥Õ¥¡¥¤¥ë¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£
#include <suninterval.h>¼¡¤Ë¡¢
-xia
¥³¥Þ¥ó¥É¹Ô¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ·¤Æ¥³¡¼¥É¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ëÎã¤ò¼¨¤·¤Þ¤¹¡£
example%
CC -o
filename
-xia
filename
.cc
¿·¤·¤¤
f95
INTERVAL
ÁȤ߹þ¤ß±é»»»Ò¤È´Ø¿ô¤³¤Î¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢°Ê²¼¤Îµ¡Ç½¤¬
f95
¶è´Ö±é»»¤ËÄɲ䵤ì¤Þ¤·¤¿¡£°Í¸·¿¤Î¸º»»±é»»»Ò
°Í¸·¿¤Î¸º»»±é»»»Ò
.DSUB.
¤Ï¡¢¶è´Ö±é»»²Ã»»¤Î°ìÊý¤Î¥ª¥Ú¥é¥ó¥É¤Î²óÉü¤Ë»ÈÍѤǤ¤Þ¤¹¡£°ìÊý¤Î¶è´ÖÊÑ¿ô¤¬Â¾Êý¤Î¶è´ÖÊÑ¿ô¤ËŬÍѤµ¤ì¤¿»»½Ñ±é»»¤Î·ë²Ì¤Ç¤¢¤ë¾ì¹ç¡¢¤³¤ì¤é¤Î 2 ¤Ä¤Î¶è´ÖÊÑ¿ô¤Ï°Í¸´Ø·¸¤Ë¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢X = A + B ¤Î¾ì¹ç¡¢X ¤Ï A ¤È B ¤ÎξÊý¤Ë¤è¤Ã¤Æ·è¤Þ¤ê¤Þ¤¹¡£X ¤«¤é A ¤Þ¤¿¤Ï B ¤ò²óÉü¤µ¤»¤ë¾ì¹ç¡¢°Í¸·¿¤Î¶è´Ö¸º»»¤Ï¤è¤ê¶¹Éý¤Î¶è´Ö·ë²Ì¤òÀ¸À®¤·¤Þ¤¹¡£
Ãí - Äê¿ô¤ÏÆÈΩ¤·¤Æ¤¤¤ë¤¿¤á¡¢°Í¸·¿¤Î±é»»¤ò¶è´ÖÄê¿ô¤ËŬÍѤ¹¤ë¤³¤È¤Ï¤Ç¤¤Þ¤»¤ó¡£°Í¸·¿¤Î±é»»¤ò¶è´ÖÄê¿ô¤ËŬÍѤ¹¤ë¤È¡¢¥³¥ó¥Ñ¥¤¥ë»þ¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤¹¡£
X.DSUB.A
¤Î·ë²Ì¤Ë¤Ï¡¢¶è´ÖÅù¼° X = A + B ¤Î B ¤ËÂФ¹¤ë²ò¤¬´Þ¤Þ¤ì¤Þ¤¹¡£²ò¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¡¢·ë²Ì¤Ï [-inf,inf
] ¤Ç¤¹¡£°Ê²¼¤ÎÎã¤Ï¡¢
DSUB
¤ÎÆ°ºî¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
- ¤Î¾ì¹ç¡¢
X .DSUB. X = [0]
WID(X) < WID(A)
¤Î¾ì¹ç¡¢X .DSUB. A = [-inf,inf]
¡£¤³¤ì¤Ï¡¢X = A + B
¤Î¾ì¹ç¡¢WID(X)
¤¬WID(A)
°Ê¾å¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤¿¤á[empty]
.DSUB.
[empty]
=
[-inf,inf]
A
¹[empty]
¤Î¾ì¹ç¡¢[empty] .DSUB. A = [empty]
X
¹[empty]
¤Î¾ì¹ç¡¢X
.DSUB.
[empty]
=
[-inf,inf]
¡£¤³¤Î·ë²Ì¤Ë¤Ê¤ë¤Î¤Ï¡¢X
¹[empty]
¤ÈA
¹[empty]
¤¬ÉÔ²Äǽ¤ÊÁȤ߹ç¤ï¤»¤Î¤¿¤áÀѽ¸¹ç´Ø¿ô¤Ë¤è¤ë½ü»»
´Ø¿ô
DIVIX
¤Ï¡¢¶è´Ö C ¤È¶è´Ö½ü»»±é»» (B/A) ¤Î¶¦ÄÌÉôʬ¤Î¶è´Ö³ÊǼÁõÃ֤Ǥ¢¤ë C Ç (B/A) ¤òÊÖ¤·¤Þ¤¹¡£A ¤Ë¥¼¥í¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¤Ë¤Ï¡¢¶è´Ö½ü»»±é»» (B/A) ¤Î¿ô³Ø¾å¤Î·ë²Ì¤Ï¸ß¤¤¤ËÁǤǤ¢¤ë 2 ¤Ä¤Î¶è´Ö¤ÎϽ¸¹ç¤Ç¤¹¡£Ï½¸¹çÆâ¤Î³Æ¶è´Ö¤Ï¡¢¸½ºß¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë¶è´Ö±é»»¥·¥¹¥Æ¥à¤Çɽ¸½¤Ç¤¤Þ¤¹¡£
DIVIX
´Ø¿ô¤Ï¡¢¤³¤ì¤é¤Î¶è´Ö¤Î 1 ¤Ä¤Þ¤¿¤Ï°ìÉô¤òÊÖ¤¹¤³¤È¤¬¤Ç¤¤Þ¤¹¡£¼¡¤ÎÎã¤Ï¡¢
DIVIX
¤Î½ÐÎϤò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
Íð¿ô¥µ¥Ö¥ë¡¼¥Á¥ó
RANDOM_NUMBER(HARVEST)
¤Ï¡¢¶è´ÖÊÑ¿ôHARVEST
¤òÄ̤·¤Æ 1 ¤Ä¤Þ¤¿¤ÏÊ£¿ô¤Îµ¿»÷Íð¿ô¶è´Ö¤òÊÖ¤·¤Þ¤¹¡£0 £ £ < 1 ¤Ï¡¢¶è´Ö½ªÎ»°ÌÃÖ ( ¤Ï²¼°Ì¤Î½ªÎ»°ÌÃÖ¡¢ ¤Ï¾å°Ì¤Î½ªÎ»°ÌÃÖ) ¤Ë¤Ä¤¤¤ÆÅö¤Æ¤Ï¤Þ¤ê¤Þ¤¹¡£¤½¤Î¤¿¤á ¤Ï¶è´Ö [0, 1] ¤Ë¶ÑÅù¤ËʬÇÛ¤µ¤ì¡¢ , ¤¬Í¿¤¨¤é¤ì¤ë¤È ¤Ï¶è´Ö ¤Ë¶ÑÅù¤ËʬÇÛ¤µ¤ì¤Þ¤¹¡£
dbx
ɽ 1-5 ¤Ï¡¢
dbx
¤Î Sun WorkShop 6 update 1 ¥ê¥ê¡¼¥¹¤Ç»ÈÍѤǤ¤ë¿·µ¡Ç½¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
Sun Performance Library
Sun Performance LibraryTM ¤Ï¡¢¿ôÃͤò¿ÍѤ¹¤ëÌäÂê (Àþ·ÁÂå¿ô¤Ê¤É) ¤ò²ò·è¤¹¤ë¤¿¤á¤ÎºÇŬ²½¤µ¤ì¤¿¹â®¤Î¿ô³Ø¥µ¥Ö¥ë¡¼¥Á¥ó¤Ç¤¹¡£Sun Performance Library ¤Ï¡¢Netlib (
http://www.netlib.org
) ¤«¤éÆþ¼ê¤Ç¤¤ë°ìÏ¢¤Î¥Ñ¥Ö¥ê¥Ã¥¯¥É¥á¥¤¥ó¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë´ð¤Å¤¤¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤Î¥ë¡¼¥Á¥ó¤Ï¡¢µ¡Ç½¤¬³ÈÄ¥¤µ¤ì¡¢ Sun Performance Library ¤È¤·¤Æ¥Ð¥ó¥É¥ë¤µ¤ì¤Æ¤¤¤Þ¤¹¡£É½ 1-6 ¤Ï¡¢Sun Performance Library ¤Î Sun WorkShop 6 update 1 ¥ê¥ê¡¼¥¹¤Ç»ÈÍѤǤ¤ë¿·µ¡Ç½¤È³ÈÄ¥¤µ¤ì¤¿µ¡Ç½¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
ɸËÜ¥¢¥Ê¥é¥¤¥¶
ɽ 1-7 ¤Ï¡¢É¸ËÜ¥¢¥Ê¥é¥¤¥¶¤Î Sun WorkShop 6 update 1 ¥ê¥ê¡¼¥¹¤Ç»ÈÍѤǤ¤ë¿·µ¡Ç½¤ò¼¨¤·¤Æ¤¤¤Þ¤¹¡£
ɽ 1-7 ɸËÜ¥¢¥Ê¥é¥¤¥¶¤Î¿·µ¡Ç½ ¥Ï¡¼¥É¥¦¥§¥¢¥«¥¦¥ó¥¿¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¥×¥í¥Õ¥¡¥¤¥ê¥ó¥° ¥Ï¡¼¥É¥¦¥§¥¢¥«¥¦¥ó¥¿¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤Ï¡¢·ÚÎÌ¥×¥í¥»¥¹ (LWP) ¤¬Æ°ºî¤·¤Æ¤¤¤ë CPU ¤Î¥Ï¡¼¥É¥¦¥§¥¢¥«¥¦¥ó¥¿¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤¹¤ë¾ì¹ç¤Ë¡¢³Æ LWP ¤Î¸Æ¤Ó½Ð¤·¥¹¥¿¥Ã¥¯¤òµÏ¿¤·¤Þ¤¹¡£ ¥¹¥¿¥ó¥É¥¢¥í¥ó¤Î collect ¥³¥Þ¥ó¥É ¿·¤·¤¤ collect
¥³¥Þ¥ó¥É¤Ï¡¢Sun WorkShop ¤ª¤è¤Ódbx
¤È¤Ï´Ø·¸¤Î¤Ê¤¤¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¾å¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¥Ç¡¼¥¿¤ò¼ý½¸¤·¤Þ¤¹¡£MPI ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥µ¥Ý¡¼¥Èµ¡Ç½¤Î²þÎÉ ¿·¤·¤¤ collect
¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥á¥Ã¥»¡¼¥¸°ú¤ÅϤ·¥¤¥ó¥¿¥Õ¥§¡¼¥¹ (MPI) ¤Î¥µ¥Ý¡¼¥Èµ¡Ç½¤¬³ÈÄ¥¤µ¤ì¤Æ¤¤¤Þ¤¹¡£OpenMP ( libmtsk
) ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥µ¥Ý¡¼¥Èµ¡Ç½¤Î²þÎÉ¿·¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢¥¹¥ì¡¼¥Ö¥¹¥ì¥Ã¥É¤¬¥Ñ¥é¥ì¥ëÎΰè¤ÎºÇ¸å¤ÇƱ´ü¤òÂÔµ¡¤·¤Æ¤¤¤ë»þ¤È¥³¡¼¥É¤¬¥·¥ê¥¢¥ëÎΰè¤Ë¤¢¤ë¤¿¤á¤ËÂÔµ¡¤·¤Æ¤¤¤ë»þ¤ò¶èÊ̤Ǥ¤Þ¤¹¡£ ¥Þ¥Ã¥×¥Õ¥¡¥¤¥ëÀ¸À®µ¡Ç½¤Î²þÎÉ ¿·¥ê¥ê¡¼¥¹¤Ç¤Ï¡¢´Ø¿ô¥ê¥¹¥È¤Î¥½¡¼¥È¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤ë¥á¥È¥ê¥Ã¥¯ (·×¬¥Ç¡¼¥¿) ¤Ë¤«¤«¤ï¤é¤º¼Â¹Ô²Äǽ¥Õ¥¡¥¤¥ë¤ËÌ¿Îá¤Ç¤¤ë¤è¤¦¤Ë¥Þ¥Ã¥×¥Õ¥¡¥¤¥ë¤¬À¸À®¤µ¤ì¤Þ¤¹¡£ ¡Ö¥Õ¥£¥ë¥¿¤òÁªÂò¡×¥À¥¤¥¢¥í¥°¤Ø¤ÎÄɲà ¡Ö¼Â¸³¥Õ¥¡¥¤¥ë¡×¥ê¥¹¥È¡¢¤ª¤è¤Ó¡Ö¥Õ¥£¥ë¥¿¤òÁªÂò¡×¥À¥¤¥¢¥í¥°Æâ¤Î¡Ö¤¹¤Ù¤Æ¤òÁªÂò¡×¡¢¡Ö¤¹¤Ù¤Æ¤òÁªÂò²ò½ü¡×¡¢¡Öȿž¡×³Æ¥Ü¥¿¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢É½¼¨¤µ¤ì¤ë¥Ç¡¼¥¿¤òÊѹ¹¤¹¤ë¼Â¸³¤òÁªÂò¤Ç¤¤Þ¤¹¡£¡Ö¤¹¤Ù¤Æ¤ò͸ú¡×¡¢¡ÖÁªÂòÃæ¤Î¤¹¤Ù¤Æ¤ò͸ú¡×¡¢¡Ö¤¹¤Ù¤Æ¤ò̵¸ú¡×¡¢¤ª¤è¤Ó¡ÖÁªÂòÃæ¤Î¤¹¤Ù¤Æ¤ò̵¸ú¡×¥Ü¥¿¥ó¤Ï¡¢¼Â¸³¤Î¥Ç¡¼¥¿É½¼¨¤Î¥ª¥ó / ¥ª¥ÕÀÚ¤êÂؤ¨¤Ë»ÈÍѤǤ¤Þ¤¹¡£
¥Ï¡¼¥É¥¦¥§¥¢¥«¥¦¥ó¥¿¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°
¥Ï¡¼¥É¥¦¥§¥¢¥«¥¦¥ó¥¿¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤Ï¡¢·ÚÎÌ¥×¥í¥»¥¹ (LWP) ¤¬Æ°ºî¤·¤Æ¤¤¤ë CPU ¤Î¥Ï¡¼¥É¥¦¥§¥¢¥«¥¦¥ó¥¿¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤¹¤ë¾ì¹ç¤Ë¡¢³Æ LWP ¤Î¸Æ¤Ó½Ð¤·¥¹¥¿¥Ã¥¯¤òµÏ¿¤·¤Þ¤¹¡£µÏ¿¤µ¤ì¤ë¥Ç¡¼¥¿¤Ë¤Ï¡¢CPU ¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤È ID¡¢¥¹¥ì¥Ã¥É¡¢LWP ¤Ê¤É¤¬¤¢¤ê¤Þ¤¹¡£¥Ï¡¼¥É¥¦¥§¥¢¥«¥¦¥ó¥¿¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¥×¥í¥Õ¥¡¥¤¥ê¥ó¥°¤¬¹Ô¤¨¤ë¤Î¤Ï¡¢Solaris 8 ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°´Ä¶ SPARC Platform Edition ¤ò»ÈÍѤ·¤Æ¤¤¤ë UltraSPARC III ¥·¥¹¥Æ¥à¾å¤È¡¢Solaris 8 ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°´Ä¶ Intel Platform Edition ¤ò»ÈÍѤ·¤Æ¤¤¤ë Intel ¥·¥¹¥Æ¥à (Pentium II ¤« III) ¾å¤À¤±¤Ç¤¹¡£¾ÜºÙ¤Ï¡¢Sun WorkShop ¥ª¥ó¥é¥¤¥ó¥Ø¥ë¥×¤Î¡Ö¥Ï¡¼¥É¥¦¥§¥¢¥«¥¦¥ó¥¿¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¥×¥í¥Õ¥¡¥¤¥ë¥Ç¡¼¥¿¡×¤È¡Ö¼ý½¸¤¹¤ë¥Ç¡¼¥¿¤ÎÁªÂò¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
¥¹¥¿¥ó¥É¥¢¥í¥ó¤Î
collect
¥³¥Þ¥ó¥É¿·¤·¤¤
collect
¥³¥Þ¥ó¥É¤Ï¡¢Sun WorkShop ¤ª¤è¤Ódbx
¤È¤Ï´Ø·¸¤Î¤Ê¤¤¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¾å¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¥Ç¡¼¥¿¤ò¼ý½¸¤·¤Þ¤¹¡£collect
¥³¥Þ¥ó¥É¤Ï¡¢¼ý½¸¤µ¤ì¤ë¥Ç¡¼¥¿¤Î·¿¤ò»ØÄꤹ¤ë°ú¿ô¡¢¼Â¸³¤ª¤è¤Ó¼Â¸³¥°¥ë¡¼¥×¤Ë̾Á°¤òÉÕ¤±¤ë°ú¿ô¡¢exec
¥·¥¹¥Æ¥à¥³¡¼¥ë¤«¤é¤Î½Ð¸ý¤ÇÂÐ¾Ý¥×¥í¥»¥¹¤òÄä»ß¤·¤¿¤Þ¤Þ¤Ë¤·¤Æ¥Ç¥Ð¥Ã¥¬¤¬¤³¤Î¥×¥í¥»¥¹¤ËÏ¢·ë¤Ç¤¤ë¤è¤¦¤ËÍ׵᤹¤ë°ú¿ô¤Ê¤É¤òÄ󶡤·¤Þ¤¹¡£¾ÜºÙ¤Ï¡¢collect
(1) ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£MPI ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥µ¥Ý¡¼¥Èµ¡Ç½¤Î²þÎÉ
¿·¤·¤¤
collect
¥³¥Þ¥ó¥É¤Ç¤Ï¡¢¥á¥Ã¥»¡¼¥¸°ú¤ÅϤ·¥¤¥ó¥¿¥Õ¥§¡¼¥¹ (MPI) ¥µ¥Ý¡¼¥Èµ¡Ç½¤¬³ÈÄ¥¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¥µ¥ó¡¦¥Þ¥¤¥¯¥í¥·¥¹¥Æ¥à¥º³ô¼°²ñ¼Ò Copyright information. All rights reserved. |
¥Û¡¼¥à | Ìܼ¡ | Á°¥Ú¡¼¥¸¤Ø | ¼¡¥Ú¡¼¥¸¤Ø | º÷°ú |