public inbox for linux-sgx@vger.kernel.org
 help / color / mirror / Atom feed
From: "Jarkko Sakkinen" <jarkko@kernel.org>
To: "Jo Van Bulck" <jo.vanbulck@cs.kuleuven.be>,
	<kai.huang@intel.com>, <linux-sgx@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>
Cc: <dave.hansen@linux.intel.com>
Subject: Re: [PATCH v3 9/9] selftests/sgx: Specify freestanding environment for enclave compilation
Date: Wed, 23 Aug 2023 20:31:32 +0300	[thread overview]
Message-ID: <CV03QFOJR0PY.8QYY51SMOAO2@suppilovahvero> (raw)
In-Reply-To: <819a5450-127b-ecd2-ac01-c58e848fba1d@cs.kuleuven.be>

On Wed Aug 23, 2023 at 3:57 PM EEST, Jo Van Bulck wrote:
> On 22.08.23 12:14, Jarkko Sakkinen wrote:
> > Do you still need nostdfiles and nostartfiles with freestanding?
>
> Thanks, good question. I tested that compiling with only -ffreestanding 
> yields:
>
> /* snipped */
> /usr/local/bin/ld: 
> /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/rcrt1.o: in 
> function `_start':
> (.text+0x24): undefined reference to `main'
> /* snipped */
>
> So we definitely still need -nostartfiles to prevent the compiler/linker 
> from introducing the standard system startup functions. However, in my 
> understanding, -nostdlib (which is what I assume you mean with 
> nostdfiles) already implies the individual options -nodefaultlibs and 
> -nostartfiles.
>
> Thus, we definitely still need -nostartfiles and I'm not 100% sure we 
> don't need -nostdlib (though it compiles fine for me with only 
> -nostartfiles). Gcc only specifies:
>
> -ffreestanding
> Assert that compilation targets a freestanding environment.  This 
> implies -fno-builtin. A freestanding environment is one in which the 
> standard library may not exist, and program startup may not necessarily 
> be at "main".
>
> Bottom line: I suggest to keep -nostdlib to be sure and remove 
> -nostartfiles (as it is redundant). I'll include this in the next  patch 
> iteration.
>
> Best,
> Jo

OK, cool, sounds like plan.

BR, Jarkko

  reply	other threads:[~2023-08-23 17:31 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-19  9:43 [PATCH v3 0/9] selftests/sgx: Fix compilation errors Jo Van Bulck
2023-08-19  9:43 ` [PATCH v3 1/9] selftests/sgx: Fix uninitialized pointer dereference in error path Jo Van Bulck
2023-08-19  9:43 ` [PATCH v3 2/9] selftests/sgx: Produce static-pie executable for test enclave Jo Van Bulck
2023-08-22  0:26   ` Huang, Kai
2023-08-23 13:19     ` Jo Van Bulck
2023-08-19  9:43 ` [PATCH v3 3/9] selftests/sgx: Handle relocations in " Jo Van Bulck
2023-08-22  1:11   ` Huang, Kai
2023-08-25 13:27     ` Jo Van Bulck
2023-08-22 10:08   ` Jarkko Sakkinen
2023-08-19  9:43 ` [PATCH v3 4/9] selftests/sgx: Fix linker script asserts Jo Van Bulck
2023-08-22 10:09   ` Jarkko Sakkinen
2023-08-19  9:43 ` [PATCH v3 5/9] selftests/sgx: Include memory clobber for inline asm in test enclave Jo Van Bulck
2023-08-22 10:10   ` Jarkko Sakkinen
2023-08-19  9:43 ` [PATCH v3 6/9] selftests/sgx: Ensure test enclave buffer is entirely preserved Jo Van Bulck
2023-08-21 11:10   ` Huang, Kai
2023-08-22 10:10   ` Jarkko Sakkinen
2023-08-19  9:43 ` [PATCH v3 7/9] selftests/sgx: Ensure expected location of test enclave buffer Jo Van Bulck
2023-08-21 11:10   ` Huang, Kai
2023-08-22 10:11   ` Jarkko Sakkinen
2023-08-19  9:43 ` [PATCH v3 8/9] selftests/sgx: Separate linker options Jo Van Bulck
2023-08-22 10:11   ` Jarkko Sakkinen
2023-08-19  9:43 ` [PATCH v3 9/9] selftests/sgx: Specify freestanding environment for enclave compilation Jo Van Bulck
2023-08-22 10:14   ` Jarkko Sakkinen
2023-08-23 12:57     ` Jo Van Bulck
2023-08-23 17:31       ` Jarkko Sakkinen [this message]
2023-08-22 10:31 ` [PATCH v3 0/9] selftests/sgx: Fix compilation errors Jarkko Sakkinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CV03QFOJR0PY.8QYY51SMOAO2@suppilovahvero \
    --to=jarkko@kernel.org \
    --cc=dave.hansen@linux.intel.com \
    --cc=jo.vanbulck@cs.kuleuven.be \
    --cc=kai.huang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sgx@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox