/Oy (Kelalaian Frame-Pointer)
Menekan pembuatan pointer bingkai pada tumpukan panggilan.
Sintaks
/Oy[-]
Keterangan
Opsi ini mempercepat panggilan fungsi, karena tidak ada penunjuk bingkai yang perlu disiapkan dan dihapus. Ini juga membebaskan satu pendaftaran lagi untuk penggunaan umum.
/Oy memungkinkan kelalaian frame-pointer dan /Oy- menonaktifkan kelalaian. Di kompilator x64, /Oy dan /Oy- tidak tersedia.
Jika kode Anda memerlukan pengalamatan berbasis bingkai, Anda dapat menentukan opsi /Oy- setelah opsi /Ox atau menggunakan optimalkan dengan argumen "y" dan off untuk mendapatkan pengoptimalan maksimum dengan alamat berbasis bingkai. Kompilator mendeteksi sebagian besar situasi di mana pengalamatan berbasis bingkai diperlukan (misalnya, dengan _alloca
fungsi dan setjmp
dan dengan penanganan pengecualian terstruktur).
Opsi /Ox (Aktifkan Pengoptimalan Kecepatan Terbanyak) dan /O1, /O2 (Minimalkan Ukuran, Maksimalkan Kecepatan) menyiratkan /Oy. Menentukan /Oy- setelah opsi /Ox, /O1, atau /O2 menonaktifkan /Oy, apakah itu eksplisit atau tersirat.
Opsi pengompilasi /Oy membuat penggunaan debugger lebih sulit karena pengompilasi menekan informasi penunjuk bingkai. Jika Anda menentukan opsi kompilator debug (/Z7, /Zi, /ZI), kami sarankan Anda menentukan opsi /Oy- setelah opsi pengkompilasi pengoptimalan lainnya.
Untuk mengatur opsi pengkompilasi ini di lingkungan pengembangan Visual Studio
Buka kotak dialog Halaman Properti proyek. Untuk detailnya, lihat Mengatur pengkompilasi C++ dan membuat properti di Visual Studio.
Pilih halaman properti Properti>Konfigurasi C/C++>Optimasi.
Ubah properti Hilangkan Penunjuk Bingkai. Properti ini menambahkan atau menghapus hanya opsi /Oy . Jika Anda ingin menambahkan opsi /Oy- , pilih halaman properti Baris Perintah dan ubah Opsi tambahan.
Untuk mengatur opsi pengkompilasi ini secara terprogram
- Lihat OmitFramePointers.
Lihat juga
Opsi /O (Optimalkan Kode)
Opsi Pengkompilasi MSVC
Sintaks Baris Perintah Pengkompilasi MSVC