問題タブ [powerpc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gcc - PPC アセンブラー使用時の「エラー: オペランドが範囲外です」
cygwin を使用する Windows で、「powerpc-eabi」を TARGET として gcc クロス コンパイラ/アセンブラ/リンカをビルドしました。組み立てると以下のエラーが出てしまいます…。
しかし、その行番号には、次の命令があります。
アセンブリに次のコマンドを使用しています。
上記のエラーが表示される理由を知りたいです。
この方向で助けてください。
java - 「JavaJARファイル「NetC.jar」を起動できませんでした。」
私は.jar file
自分のためにを開こうとしていますPPC
が、エラーが発生し続けます:
JavaJARファイル「NetC.jar」を起動できませんでした。
私もダウンロードしましJava 5
た。
「」にも行き、Java Preferences
に設定されていることを確認しましたJava 5
。私も再起動しPPC
ました。
以下は、ターミナルでこのコマンドを実行しようとしたときに発生するエラーです。
salvador-castros-power-mac-g4:netc-0.2.0 becky $ java -jarNetC.jarスレッド"main"の例外java.lang.UnsupportedClassVersionError:java.lang.ClassLoader.defineClass2の.classファイルのバージョン番号が正しくありません(ネイティブメソッド)at java.lang.ClassLoader.defineClass(ClassLoader.java:775)at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:160)at java.net.URLClassLoader.defineClass(URLClassLoader.java:254)at java.net.URLClassLoader.access $ 100(URLClassLoader.java:56)at java.net.URLClassLoader $ 1.run(URLClassLoader.java:195)at java.security.AccessController.doPrivileged(Native Method)atjava.net.URLClassLoader。 findClass(URLClassLoader.java:188)at java.lang.ClassLoader.loadClass(ClassLoader.java:317)at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:280)at java.lang.ClassLoader.loadClass(ClassLoader.java:252)at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:375)salvador-castros-power-mac-g4:netc-0.2.0 becky $
macos - xcode - Apple LLVM コンパイラ 3.0 を使用して PowerPC CPU 用にコンパイルする
XCode 4 では PowerPC アーキテクチャのサポートが廃止されましたが、一部のユーザーのために PowerPC を引き続きサポートしたいと考えています。
SO のこのチュートリアルに従い、ppc 互換性を XCode 4 に復元する方法を教えてくれましたが、これはコードのコンパイル時に多くの警告といくつかのエラーをスローする GCC (4.2) コンパイラ用です。コードは、Apple の LLVM 3.0 を中心に最適化されています。
私の質問:
- Power PC の展開に Apple LLVM コンパイラ 3.0 を使用することはできますか?
- これを行うにはどうすればよいでしょうか。
- コンパイル時に PPC との互換性を確保するには、どの設定変数を設定する必要がありますか?
ありがとうございました!
c++ - 割り込みハンドラでの浮動小数点演算 (PowerPC、VxWorks)
私が取り組んでいるソフトウェアで見た問題について、私が理解しようとしていることに正確に答えるリソースを見つけられなかったので、ここで天才に尋ねます!
まず、PowerPC プロセッサで VxWorks を実行しています。
別の問題をデバッグしようとして、割り込み処理ルーチンに簡単で汚れたデバッグ コードを投げてみました。関心のある値 (つまり、最後の割り込みが発生してからの経過時間) を格納するために、倍精度浮動小数点演算が必要でした。これは、実行中のスレッドのハンドラーの外側で後で使用しました。これには問題は見られませんでしたが (確かに、時間がかかりますが、時間的には余裕がありました。割り込みはそれほど速くはありません)、VxWorks は確かに気に入らなかったようです。そのコードに到達すると、一貫してクラッシュします。これは、システムを再起動する悪いクラッシュの 1 つです。問題の原因として double 操作を突き止めるのに少し時間がかかりました。割り込みで呼び出されたルーチンから一定の double を返すことでさえ、悲惨な失敗をしました。
PowerPC (またはその他の一般的なアーキテクチャ) では、割り込みハンドラで浮動小数点演算を実行し、割り込みハンドラによって呼び出される関数で浮動小数点 (または他のタイプ) の値を返す際に一般的に問題がありますか? これによりプログラムがクラッシュする理由がわかりません。
(回避策は、最後の割り込み以降の「ティック」から最後の割り込み以降の「時間」への変換を、コードがハンドラーの外に出るまで遅らせることでした。これは、長い整数操作をうまく処理しているように見えるためです。)
kernel - AIX/powerpc でアトミック割り当てを実装する方法は?
I'm porting a kernel extentsion to 32/64 bit AIX on multi-processor PowerPC, written in C. I don't need more than atomic read operation and atomic write operations (I have no use for fetch-and-add, compare-and-swap etc.) Just to clarify: to me, "atomicity" means not only "no interleaving", but also "visibility across multiple cores". The operations operate on pointers, so operations on 'int' variables are useless to me.
If I declare the variable "volatile", the C standard says the variable can be modified by unknown factors and is therefore not subject to optimizations.
From what I read, it seems that regular reads and writes are supposed to be non-interleaved, and the linux kernel souces seem to agree. it says:
stw
おそらくアトミックである「ストアワード」ですが、「%U0%X0」が何を意味するのかわかりません。このアセンブリ命令がどのように可視性を課すのか理解できません。カーネル拡張機能をコンパイルすると、必要な割り当てに「std」が使用されますが、読んだところによると、64ビットマシンでもアトミックである必要があります。PowerPC とその命令セットの詳細についてはほとんど理解していませんが、コンパイルされたファイルのアセンブリ リストに、メモリ バリア命令 (「sync」または「eieio」) が見つかりませんでした。
カーネルは fetch_and_addlp() サービスを提供し、これを使用してアトミック読み取り (v = fetch_and_addlp(&x, 0)
など) を実装できます。
だから私の質問は:
変数「volatile」を宣言して、可視性とインターリーブなしの意味で読み取りと書き込みの原子性を達成するだけで十分ですか?
1に対する答えが「いいえ」の場合、そのような原子性はどのように達成されますか?
Linux PowerPC アトミック実装における「%U0%X0」の意味は何ですか?
assembly - VxWorks 5.4 での Hello World、MPC 8280 (powerPC) の例外
Hello World! を印刷しようとしています。上記のコードで。しかし、このコードでは、「sc」の後の命令、つまり「---->」でマークされた行で例外が発生します。これは、vxWorks-5.4 のプロセッサ MPC 8280 (PowerPC) で実行しようとしています。いくつかのドキュメントを参照してください。インターネットで見つけて、scが例外であることを知りました。この仕事を達成するために何ができるか教えてください。確認のためだけに、x86 の類似のコードは int 0x80 で完全に動作し、sc のジョブを実行してシステム コールをトリガーしますが、何らかの理由で PPC では動作しないようです。
アセンブリコードで試したのはこれが初めてです。
embedded - printfを使用してfloat/doubleを印刷すると、プログラムがクラッシュします
私はPowerPcのシステムコールの実装に取り組んでいます。私はいくつかのgcc関数をテストしましたが、それらはすべて機能しているようです(たとえば、sqrt sin cos pow printf malloc ...)
最近、printfに問題があることに気づきました。integer / charを出力する限りは正常に機能しますが、f%f /lfを印刷してfloat/doubleを出力しようとすると、プログラムがクラッシュします。(実行されるべきではない場所で実行されているようです)
私はmakefileをチェックしました、それは使用します:
プログラムを作成すると、多くのnof(フロートなし)ライブラリがリンクされているのを見ることができます。
また、スタック/ヒープに十分なスペースがあるので、問題がないこともわかっています。 floatを印刷するときにprintfがクラッシュする理由はまだありますか?
c++ - インオーダープロセッサのコードをプロファイリングするための優れたPPCベースの>MACHINE<とは
古いMacにはPPCプロセッサが搭載されていることは知っていますが、これは完璧ですが、Linuxディストリビューションをドロップするのに適した特定のモデルはどれですか?私は10年以上Macを使っていないので、どちらを選ぶべきかわかりません。特に、Linuxを受け入れるものについて質問します。Appleは自分のマシンで開発するためにお金を払うように頼んでいると思いますか、それともMacでgccとLLVMでc ++を無料で使用できますか?
順序どおりのリスクプロセッサでコードをプロファイリングできる必要があります。PPCから始めるのが最適なようですが、他のどのCPUが同様のコーディングエクスペリエンスを提供しますか?つまり、命令セットが大幅に削減されているため、分岐時のストール、マイクロコード命令、およびfloat / int/vector表現を切り替えるときのロードヒットストアの問題が発生します。
c - ELF オブジェクト ファイルに含まれるデバッグ情報の種類を知るにはどうすればよいですか?
ELF オブジェクト ファイルがあります。どのタイプのデバッグ情報が含まれているか知りたいです。PPC アーキテクチャ用の Diab コンパイラ (C ソース) でコンパイルされています。私はそれがデバッグシンボルで構築されたと確信しています。
でデバッグ情報を抽出しようとしましdwarfdump
たが、うまくいかないので、デバッグ情報は DWARF 型ではないと思います。
objdump を使用してデバッグ情報を表示すると、何も表示されません。
.debug_sfnames
ELF ファイルには、.debug_srcinfo
および と呼ばれるセクションがありますが、この ELF ファイルにはデバッグ情報が含まれていない可能性があり.debug.srcinfo
ますか? または、デバッグ情報objdump
が処理できない形式で保存されていますか?
assembly - ビット ローテーションを使用した PowerPC アセンブラー関数について
バッファーを復号化するためにいくつかの基本的なビットシフトを行うレガシーアプリを移植しようとしていますが、このpowerpcコードで迷っています.
これは PPC 関数です。引数が 1 つあります。バッファだと思います (パラメータは void *,int) http://pastebin.com/RNRAWCpi
これは私の擬似cが進んだ限りです:
たとえば、crypt が r29 と r30 の 2 つのレジスタに分割されるのはなぜですか。
どんな援助でも大歓迎です。