問題タブ [sparc]
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.
linker - Sun Solaris Studios 12.2 のリンカー (ld) はどこにありますか?
現在、リンクの目的で、SPARC マシンの次のディレクトリにプリインストールされているリンカーを使用しています。
アプリケーションを Sun Studios Compiler 12.2 でコンパイルしたいので、このパッケージに付属しているリンカーも使用したいと考えています。ただし、Sun Studios の bin ディレクトリを確認すると、ac コンパイラ (cc) だけが見つかりますが、ld (リンカー) は見つかりません。これがどこに行ったのか、どうすればそれを呼び出すことができるのか誰にも分かりませんか?
どうもありがとう、マイク
c - 「未定義シンボル_memset」
私は同様の質問をしましたが、本当に混乱している更新があります。基本的に、次のようにリンカーを使用して多数のオブジェクト ファイルをリンクしたいと考えています。
次のエラーが表示されます。
興味深いのは、memset が reconf.c で参照されておらず、ディレクトリ全体も grep しましたが、他のどのファイルにも _memset への参照がないことです。したがって、ソース コードのどこにも _memset が実際に使用されていないのに、なぜリンカからこのエラー メッセージが表示されるのか不思議に思っています。ここで何が起こっているのか誰にもわかりませんか?
どうもありがとう、このエラーは私たちを精神的に駆り立てています!
編集:
memset のライブラリへのパスを追加して -lc にリンクし、詳細モードで実行しようとしました。
次に、次のエラーが表示されます: ld: 致命的: ライブラリ -lc: 見つかりません ld: 致命的: ファイル処理エラー。q に出力が書き込まれません
そしてこれ libc.so は明らかに /usr/lib にありますが...
紛らわしい
編集II:
ここで読むことができるように、さらに調査を行うと、Solaris 10 では静的リンクが消えたようです。
http://blogs.oracle.com/rie/entry/static_linking_where_did_it
おそらくこれは私の問題です。この問題を回避するためにリンカー コマンドを書き直す方法を知っている人はいますか?
どうもありがとう!
linux-kernel - OpenBoot クライアントプログラムのロードアドレスと
Web をブラウジングして OpenBoot と SPARCv9 プロセッサに関する情報を探していると、クライアント プログラムが OpenBoot によって 0x4000[1] にロードされていることがわかりました。このアドレスが使用される理由。また、実際の sparc マシンでダンプを実行しようとすると、メモリの最初の 8kb 程度 (0x0 から 0x2000 まで) で高速データ アクセス MMU ミスが発生するため、これはメモリ マップド IO 程度であると推測されますが、その (0x2000 ~ 0x4000) はゼロで埋められます。したがって、OPB が格納されている場所があるという答えはあり得ないと思います (実際には、このマシンでは 0xf0055310 にあります)。
そして、私がまだこの主題について話している間。Linux Kernel for SPARC が、以前に SILO によって 0x4000 から 0x40004000 に再配置された後、別のアドレスに再配置されるのはなぜですか? Linux/その他のクライアントプログラムのロード中のSILOおよびOBP出力を除いて、これはどこにも見つかりませんでした。
assembly - 単純な SPARC ASM 数学コードのコンパイル時のエラー
ハードコーディングされたステートメントを評価するために SPARC asm コードを書いていますが、理解できないエラーが発生します。私はあらゆる場所を検索しましたが、いくつかのバグ レポートでは多く出てくるように見えますが、プログラマー向けに見つけた実際の手がかりはありません。はい、それは宿題です。はい、まだ終わっていません。はい、あちこちでブランチの遅延があります。私は自分でそれらに到達しますが、エラーが何であるかを知る必要があります. このエラーは何の役にも立ちませんし、私が持っている本も役に立ちません。
私はこれに本当に慣れていないので、どんな助けでも大歓迎です。
次に、マクロを定義してコンパイルしようとすると、次のようになります。
cs32107@matrix:~$ m4 polynomialv2.m > polynomial.s
cs32107@matrix:~$ gcc -g polynomial.s -o 多項式
ld: 致命的: 再配置エラー: R_SPARC_32: ファイル /var/tmp//ccVOrnx2.o: シンボル: オフセット 0xfb5d11dd はアライメントされていません ld: 致命的: 再配置エラー: R_SPARC_32: ファイル /var/tmp//ccVOrnx2.o: シンボル:オフセット 0xfb5d120f は非整列 ld: 致命的: 再配置エラー: R_SPARC_32: ファイル /var/tmp//ccVOrnx2.o: シンボル: オフセット 0xfb5d1215 は非整列 ld: 致命的: 再配置エラー: R_SPARC_32: ファイル /var/tmp// ccVOrnx2.o: シンボル: オフセット 0xfb5d1219 はアライメントされていません ld: 致命的: 再配置エラー: R_SPARC_32: ファイル /var/tmp//ccVOrnx2.o: シンボル: オフセット 0xfb5d121d はアライメントされていません ld: 致命的: 再配置エラー: R_SPARC_32: ファイル/var/tmp//ccVOrnx2.o: シンボル: オフセット 0xfb5d1266 はアラインされていません collect2: ld は 1 つの終了ステータスを返しました cs32107@matrix:~$
ruby-on-rails - SPARC Solaris 10のレール用のjavascriptランタイムはありますか?
Solaris 10マシン(SPARC)でレールを実行しようとしています。RubyとRailsをインストールして、新しいプロジェクトを作成することができました。レールサーバーを起動しようとすると、次のようになります。
以前にLinuxマシンでこれに遭遇したことがあるので、機能しなかったtherubyracerをインストールしてから、これも機能しないnode.jsを試しました。これらはSPARCをサポートしていないようです。SPARCマシンで動作するjavascriptランタイムを知っている人はいますか?
assembly - 数値が奇数かどうかを返す非常に基本的なSPARCアセンブリルーチンを作成する際の問題
私はisOddと呼ばれる小さなアセンブリルーチンを書いています。これは、名前が示すように、渡された整数が奇数の場合、%演算から1を返すことによって返されます。
これはこれまでの私のコードです:
しかし、私は良い出力を得ることができません。実際、モジュラス演算を実際に実行するのではなく、numに渡した値を返すだけのようです。
グーグルはそのような基本的な質問に役立つことを証明していません。これは私の最初のアセンブリコードなので、「レジスタ」の概念にかなり慣れていません。それらを混同すると、エラーが発生する可能性があると思います。
よろしくお願いします!
algorithm - SPARCアセンブリで除算剰余を計算する方法は?
以下は、2 つの正の整数の除算を計算する疑似コードです。
HR レジスタは余りを保存し、LR レジスタは被除数を保存します。(そして最終的にルートを保存します)
しかし、このアルゴリズムには問題があると思います。
このアルゴリズムでは引き算が元に戻らないことがあります(割り算は引き算の続きです)。
たとえば、6 / 3 (0110 / 011)
このアルゴリズムはもう一度 -3 を減算します。(この割り算を手で計算する場合、このような状況は発生しません)
したがって、このアルゴリズムには問題があると思います。
あなたは私に同意しませんか?アセンブリで除算剰余を計算する方法は?
java - 簡単な C コードの翻訳
そこで、コンピューター サイエンス コースの課題に取り組んでいます。C で記述されたアルゴリズムを使用して、それをアセンブリ (SPARC) で複製する必要があります。私の問題は、Java を専門としているため、C コードをほとんど知らないことです。このコードを見て、それに相当する Java を教えてくれる人はいますか? SPARC で直接使用するためのヒントがあれば、私もそれらのアイデアを受け入れます。ありがとう!
assembly - 単純な SPARC アセンブリの printf コード (スタック変数を出力)
期待値は
5
7
12 です
しかし、結果の値は
5
5
12 でした
コードの何が問題になっていますか?
前もって感謝します
gcc - GCC (2 行、cmp および bl 命令) を使用して SPARC アセンブリをコンパイルすると、「不正なオペランド」エラーが発生するのはなぜですか?
GCC は次のように不満を述べています。
A3.s: アセンブラー メッセージ: A3.s:32: エラー: 不正なオペランド A3.s:33: エラー: 不正なオペランド
問題のある行 (イタリック体) と周囲のコードは次のとおりです。
私は SPARC アセンブリの初心者ですが、これを修正できませんでした。誰でも問題を見ることができますか?