Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[efi] Mark EFI debug transcription functions as __attribute__ (( pure ))
Signed-off-by: Michael Brown <mcb30@ipxe.org>
  • Loading branch information
mcb30 committed Aug 27, 2015
1 parent a09dd5c commit 0e40737
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 6 deletions.
8 changes: 5 additions & 3 deletions src/include/ipxe/efi/efi.h
Expand Up @@ -200,9 +200,11 @@ extern EFI_LOADED_IMAGE_PROTOCOL *efi_loaded_image;
extern EFI_DEVICE_PATH_PROTOCOL *efi_loaded_image_path;
extern EFI_SYSTEM_TABLE *efi_systab;

extern const char * efi_guid_ntoa ( EFI_GUID *guid );
extern const char * efi_devpath_text ( EFI_DEVICE_PATH_PROTOCOL *path );
extern const char * efi_handle_name ( EFI_HANDLE handle );
extern const __attribute__ (( pure )) char * efi_guid_ntoa ( EFI_GUID *guid );
extern const __attribute__ (( pure )) char *
efi_devpath_text ( EFI_DEVICE_PATH_PROTOCOL *path );
extern const __attribute__ (( pure )) char *
efi_handle_name ( EFI_HANDLE handle );

extern void dbg_efi_openers ( EFI_HANDLE handle, EFI_GUID *protocol );
extern void dbg_efi_protocols ( EFI_HANDLE handle );
Expand Down
7 changes: 4 additions & 3 deletions src/interface/efi/efi_debug.c
Expand Up @@ -162,7 +162,7 @@ static struct efi_well_known_guid efi_well_known_guids[] = {
* @v guid GUID
* @ret string Printable string
*/
const char * efi_guid_ntoa ( EFI_GUID *guid ) {
const __attribute__ (( pure )) char * efi_guid_ntoa ( EFI_GUID *guid ) {
union {
union uuid uuid;
EFI_GUID guid;
Expand Down Expand Up @@ -314,7 +314,8 @@ void dbg_efi_protocols ( EFI_HANDLE handle ) {
* @v path Device path
* @ret text Textual representation of device path, or NULL
*/
const char * efi_devpath_text ( EFI_DEVICE_PATH_PROTOCOL *path ) {
const __attribute__ (( pure )) char *
efi_devpath_text ( EFI_DEVICE_PATH_PROTOCOL *path ) {
EFI_BOOT_SERVICES *bs = efi_systab->BootServices;
static char text[256];
void *start;
Expand Down Expand Up @@ -627,7 +628,7 @@ static struct efi_handle_name_type efi_handle_name_types[] = {
* @v handle EFI handle
* @ret text Name of handle, or NULL
*/
const char * efi_handle_name ( EFI_HANDLE handle ) {
const __attribute__ (( pure )) char * efi_handle_name ( EFI_HANDLE handle ) {
EFI_BOOT_SERVICES *bs = efi_systab->BootServices;
struct efi_handle_name_type *type;
unsigned int i;
Expand Down

0 comments on commit 0e40737

Please sign in to comment.