Jump to content 日本-日本語
日本HPホーム 製品とサービス サポートとドライバ ソリューション ご購入方法
≫ お問い合わせ
日本HPホーム
企業ユーザ向けサポート情報   >  HP-UX サポート  >  セキュリティ報告&パッチダイジェスト翻訳版

PHSS_35980 11.31 u2comp/be/pluginライブラリパッチ

企業ユーザ向けサポート情報

HP-UX サポート
Tru64 サポート
OpenVMS サポート
セキュリティ報告&パッチダイジェスト翻訳版
技術情報ツリー
ソフトウェアアップデート情報
ITRC日本フォーラム

ITRC

パッチデータベース
技術情報ベースの検索
サポートケースマネージャ
ソフトウェア アップデート マネージャ (SUM)
ご利用の手順
日本HPサイトマップ
コンテンツに進む
パッチ名:   PHSS_35980

パッチ摘要: 11.31 u2comp/be/pluginライブラリパッチ

作成日:  07/03/07

公開日:  07/04/18

ハードウェアプラットフォームおよびOSリリース:

	11.31

現象:

	PHSS_35980:

	01)JAGag24837:
	IAシステム用最適化オプション"-O"を使ってfprintf()をコンパイルすると、
	fprintf()の実行時に、x25initコマンドが/etc/x25/x25confファイルを壊しま
	す。

	02)JAGag32532:
	関数呼び出しのリターン時に、値渡しラージパラメータのアドレス/値が壊れ
	ていることがあります。

	03)JAGaf99194:
	交換、タイリング、アンロールおよびジャム、融合、および分散のようなルー	
	プ最適化を行うと、浮動小数点(FP)演算の順序が変わり、FP結果の精度が低下
	する可能性があります。したがって、コンパイラは、HPのFPモデルに従ってこ
	れらの最適化を行うべきです(つまり、ループ最適化によってFP結果が変わる
	場合は、ユーザーが+Ofltacc=relaxedを指定した場合にのみその最適化を行う
	べきです)。ところが、現在のコンパイラはこのルールを無視します。

	04)JAGag10594:
	+Ofenvaccessオプションと+Ofltacc=relaxedオプションを組み合わせて使用す
	ると、オプティマイザが無限にループすることがあります。

	05)JAGag16706:
	不正なmemcpy合成が行われます(この問題を回避するために+Uhmemop=disable
	を指定せざるを得ません)。

	06)JAGag17453:
	非常に大きな"値によるstruct"を渡すと、コンパイルに時間がかかり、メモリ
	ー使用量が増えます。

	07)JAGag17310:
	デバッグモード(-g)の場合、未結合配列引き数の宣言内に不完全なクラス宣言
	が含まれていると、コンパイラが異常終了します。

	08)JAGag19492:
	デフォルトのfltaccの場合、ループ交換が不正確なFP結果を生成します。

	09)JAGag20670:
	switch文使用時のリカバリコード生成にバグがあります。

	10)JAGag23282:
	パラメータがオーバーラップしていると、不正なコード移動が行われることが
	あります。

問題点の説明:

	PHSS_35980:

	01)JAGag24837:
	x25initコマンド"-O"は、fprintfのコードを正しく生成していませんでした。

	02)JAGag32532:
	ラージパラメータに渡すラージパラメータのコードを正しく生成していません
	でした。

	03)JAGaf99194:
	一部のループ最適化で、fltaccオプションが無視されていました。

	04)JAGag10594:
	"+Ofenvaccess +Ofltacc=relaxed"を指定すると、オプティマイザが無限にル
	ープすることがありました。

	05)JAGag16706:
	PortAThon: +O2のループが不正に__milli_memmoveを呼び出していました。

	06)JAGag17453:
	お客様のテストケースで、コンパイルに時間がかかり、メモリー割り当てエラ
	ーが起きていました。

	07)JAGag17310:
	DWARF生成に問題があったため、コンパイラが異常終了していました。

	08)JAGag19492:
	+O3を使って最適化すると、値が変わることがありました。

	09)JAGag20670:
	+O2使用時のswitch文での不正なリカバリコード。

	10)JAGag23282:
	コンパイラは、標準ライブラリ呼び出し(strlen)への変更付きルーチンパラメ
	ータ渡しを正しく解析していませんでした。その結果、呼び出しの前に、変更
	コードが移動されるため、呼び出しから予期しない出力が返されていました。

-----------------------------------------------------------------------------
Patch Name: PHSS_35980

Patch Description: 11.31 u2comp/be/plugin library patch

Creation Date: 07/03/07

Post Date: 07/04/18

Hardware Platforms - OS Releases: 
	11.31

Products: 
	Auxiliary-Opt B.11.31

Filesets: 
	Auxiliary-Opt.LANG-AUX,fr=C.06.12,fa=HP-UX_B.11.31_IA,v=HP
	C-Dev-Tools.C-AUX,fr=C.06.12,fa=HP-UX_B.11.31_IA,v=HP

Automatic Reboot?: No

Status: General Release

Critical: 
	Yes
	PHSS_35980: ABORT CORRUPTION
	 See JAGag17310, JAGag24837 and JAGag32532.

Category Tags: 
	defect_repair general_release critical halts_system
	corruption

Path Name: /hp-ux_patches/11.X/PHSS_35980

Symptoms: 
	PHSS_35980:
	JAGag24837: x25init command corrupts the /etc/x25/x25conf
		    file during an fprintf(), when it is compiled
		    with the optimization option "-O" for IA
		    systems.
	JAGag32532: Address/values of large parameters passed by
		    value may be corrupted upon return of function
		    call.
	JAGaf99194: Some loop optimizations such as interchange,
		    tiling, unroll-and-jam, fusion, and
		    distribution can potentially change the order
		    of floating- point (FP) operations, which
		    result less accurate FP result. The compiler
		    should guarantee that these optimizations
		    follow the HP's FP model (i.e. if a particular
		    loop optimization changes FP result value, this
		    optimization should only be performed when the
		    user specifies +Ofltacc=relaxed). This is
		    broken in current compiler.
	JAGag10594: +Ofenvaccess, +Ofltacc=relaxed options
		    combination can cause optimizer to loop
		    infinitely.
	JAGag16706: Wrong memcpy synthesis is happening.
		    (+Uhmemop=disable to workaround)
	JAGag17453: passing huge struct by value results in long
		    compile time and memory usage.
	JAGag17310: Given an incomplete class declaration involved
		    in the declaration of an unbounded array
		    argument the compiler will abort under debug
		    (-g).
	JAGag19492: Loop interchange produces inaccurate FP results
		    in default fltacc.
	JAGag20670: Recovery code generation bug with a switch
		    statement.
	JAGag23282: overlapping parameters result in wrong code
		    motion in some case.

Defect Description: 
	PHSS_35980:
	JAGag24837: x25init command -O generated bad code for
		    fprintf
	JAGag32532: Bad code for large parms passed to large parms

	JAGaf99194: fltacc option is ignored by some loop
		    optimizations
	JAGag10594: "+Ofenvaccess +Ofltacc=relaxed" can cause
		    optimizer to loop infinitely
	JAGag16706: PortAThon: +O2 loop incorrectly calls
		    __milli_memmove
	JAGag17453: Long compilation time and memory allocation
		    failure for large parms
	JAGag17310: This is caused by a problem in DWARF
		    generation.
	JAGag19492: Value-changing optimization with +O3
	JAGag20670: Recovery code error in switch statement using
		    +O2
	JAGag23282: The compiler incorrectly analyzed the passing
		    of a modified routine parameter to a a standard
		    library call (strlen). As a result, it moved
		    the modification before the call, resulting in
		    an unexpected output from the call.

Enhancement: 
	No

SR: 
	8606469650 8606478215 8606441461 8606453886 8606460672
	8606461495 8606461346 8606463736 8606465040 8606467926

Patch Files: 

	Auxiliary-Opt.LANG-AUX,fr=C.06.12,fa=HP-UX_B.11.31_IA,v=HP:
	/opt/langtools/lbin/be
	/opt/langtools/lbin/u2comp
	/opt/langtools/lib/hpux32/libu2comp.so
	/opt/langtools/lib/hpux64/libu2comp.so
	/opt/langtools/lib/nls/msg/C/u2comp.cat

	C-Dev-Tools.C-AUX,fr=C.06.12,fa=HP-UX_B.11.31_IA,v=HP:
	/opt/langtools/lib/hpux32/librtc_aux.a
	/opt/langtools/lib/hpux64/librtc_aux.a

what(1) Output: 

	C-Dev-Tools.C-AUX,fr=C.06.12,fa=HP-UX_B.11.31_IA,v=HP:
	/opt/langtools/lib/hpux32/librtc_aux.a:
		HP IA-64 RTC_AUX B.11.23 (Thu Dec 14 23:44:18 2006 P
			ST)
	/opt/langtools/lib/hpux64/librtc_aux.a:
		HP IA-64 RTC_AUX B.11.23 (Thu Dec 14 23:44:18 2006 P
			ST)

	Auxiliary-Opt.LANG-AUX,fr=C.06.12,fa=HP-UX_B.11.31_IA,v=HP:
	/opt/langtools/lbin/be:
		IELF v2.6 (SYZYGY Feb 21 13:48)
		HP Low-level optimizer AR.0606.116 (02/21/07)
		HP Itanium libflow AR0703.1 (06/19/06) [3006574443 3
			94309]
		linkstamp Thu Feb 22 22:38:32 2007 PST
	/opt/langtools/lbin/u2comp:
		IELF v2.6 (SYZYGY Feb 21 13:48)
		HP Itanium libflow AR0703.1 (06/19/06) [3006574443 3
			94309]
		linkstamp Thu Feb 22 22:38:33 2007 PST
	/opt/langtools/lib/hpux32/libu2comp.so:
		None
	/opt/langtools/lib/hpux64/libu2comp.so:
		None
	/opt/langtools/lib/nls/msg/C/u2comp.cat:
		None

cksum(1) Output: 

	C-Dev-Tools.C-AUX,fr=C.06.12,fa=HP-UX_B.11.31_IA,v=HP:
	922365234 20316 /opt/langtools/lib/hpux32/librtc_aux.a
	2406126060 25276 /opt/langtools/lib/hpux64/librtc_aux.a

	Auxiliary-Opt.LANG-AUX,fr=C.06.12,fa=HP-UX_B.11.31_IA,v=HP:
	3721979319 42436172 /opt/langtools/lbin/be
	510241721 16907616 /opt/langtools/lbin/u2comp
	2380724906 163880 /opt/langtools/lib/hpux32/libu2comp.so
	3208974707 174240 /opt/langtools/lib/hpux64/libu2comp.so
	4229042848 11660 /opt/langtools/lib/nls/msg/C/u2comp.cat

Patch Conflicts: None

Patch Dependencies: None

Hardware Dependencies: None

Other Dependencies: None

Supersedes: None

Equivalent Patches: 
	PHSS_35977:
	s700: 11.23
	s800: 11.23

Patch Package Size: 20790 KBytes

Installation Instructions: 
	Please review all instructions and the Hewlett-Packard
	SupportLine User Guide or your Hewlett-Packard support terms
	and conditions for precautions, scope of license,
	restrictions, and, limitation of liability and warranties,
	before installing this patch.
	------------------------------------------------------------
	1. Back up your system before installing a patch.

	2. Login as root.

	3. Copy the patch to the /tmp directory.

	4. Move to the /tmp directory and unshar the patch:

		cd /tmp
		sh PHSS_35980

	5. Run swinstall to install the patch:

		swinstall -x autoreboot=true -x patch_match_target=true \
			  -s /tmp/PHSS_35980.depot

	By default swinstall will archive the original software in
	/var/adm/sw/save/PHSS_35980.  If you do not wish to retain a
	copy of the original software, include the patch_save_files
	option in the swinstall command above:

		-x patch_save_files=false

	WARNING: If patch_save_files is false when a patch is installed,
		 the patch cannot be deinstalled.  Please be careful
		 when using this feature.

	For future reference, the contents of the PHSS_35980.text file is
	available in the product readme:

		swlist -l product -a readme -d @ /tmp/PHSS_35980.depot

	To put this patch on a magnetic tape and install from the
	tape drive, use the command:

		dd if=/tmp/PHSS_35980.depot of=/dev/rmt/0m bs=2k

Special Installation Instructions: None

ページトップへ
セキュリティ報告&パッチダイジェスト翻訳版に戻る
プライバシー 本サイト利用時の合意事項 ウェブマスターに連絡
© 2008 Hewlett-Packard Development Company, L.P.